<SEC-DOCUMENT>0001140361-23-039090.txt : 20230810
<SEC-HEADER>0001140361-23-039090.hdr.sgml : 20230810
<ACCEPTANCE-DATETIME>20230810163612
ACCESSION NUMBER:		0001140361-23-039090
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		48
CONFORMED PERIOD OF REPORT:	20230630
FILED AS OF DATE:		20230810
DATE AS OF CHANGE:		20230810

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TRANSACT TECHNOLOGIES INC
		CENTRAL INDEX KEY:			0001017303
		STANDARD INDUSTRIAL CLASSIFICATION:	COMPUTER PERIPHERAL EQUIPMENT, NEC [3577]
		IRS NUMBER:				061456680
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-21121
		FILM NUMBER:		231160161

	BUSINESS ADDRESS:	
		STREET 1:		ONE HAMDEN CENTER
		STREET 2:		2319 WHITNEY AVENUE, SUITE 3B
		CITY:			HAMDEN
		STATE:			CT
		ZIP:			06518
		BUSINESS PHONE:		203-859-6800

	MAIL ADDRESS:	
		STREET 1:		ONE HAMDEN CENTER
		STREET 2:		2319 WHITNEY AVENUE, SUITE 3B
		CITY:			HAMDEN
		STATE:			CT
		ZIP:			06518
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>form10q.htm
<DESCRIPTION>FORM 10-Q FOR THE PERIOD ENDED JUNE 30, 2023
<TEXT>
<XBRL>
<html xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:srt="http://fasb.org/srt/2023" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:currency="http://xbrl.sec.gov/currency/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:naics="http://xbrl.sec.gov/naics/2023" xmlns:sic="http://xbrl.sec.gov/sic/2023" xmlns:stpr="http://xbrl.sec.gov/stpr/2023" xmlns:exch="http://xbrl.sec.gov/exch/2023" xmlns:cef="http://xbrl.sec.gov/cef/2023" xmlns:ecd="http://xbrl.sec.gov/ecd/2023" xmlns:tact="http://transact-tech.com/20230630" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <!-- Licensed to: Broadridge Financial Solutions, Inc.
         Document created using Broadridge PROfile 23.7.1.5162
         Copyright 1995 - 2023 Broadridge -->
    <meta http-equiv="Content-Type" content="text/html" />
</head>

<body style="background-color: #ffffff; color: #000000;">
<div id="DSPFiXBRLHidden" style="display: none;"><ix:header><ix:hidden><ix:nonNumeric name="dei:AmendmentFlag" id="Fact_6970aba70d8a4f56abe8d884f1a92023" contextRef="c20230101to20230630" format="ixt:fixed-false">false</ix:nonNumeric><ix:nonNumeric name="dei:CurrentFiscalYearEndDate" id="Fact_0e4e04f6810d4e7eac08dcf5fca2369a" contextRef="c20230101to20230630" format="ixt:date-month-day">12-31</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalYearFocus" id="Fact_38eb9a1a079540a8a1bfe1137a3e8feb" contextRef="c20230101to20230630">2023</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" id="Fact_48ab9c151138410591c2f487836d3ce1" contextRef="c20230101to20230630">Q2</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_37bd0bc3241842a59b886cf67ab6cfb8" contextRef="c20230101to20230630">0001017303</ix:nonNumeric><ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" id="Fact_e8b96d7595e54f3eac451aa3fb8bf1c0" contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20250401Member" unitRef="U002" xsi:nil="true"></ix:nonFraction><ix:nonNumeric name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="Fact_46d6edcfceac48c18fff396979fa22a4" contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20240401Member">P12M</ix:nonNumeric><ix:nonNumeric name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="Fact_88bacb023a1046b0968f765a62b445b3" contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20250401Member">P12M</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="tact-20230630.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="c20230101to20230630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230731"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-07-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230331_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220331_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230331_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221231_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221231_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230331_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211231_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221231_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211231_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220331_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20211231_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20221231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220331_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220630_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220630_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220630_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20210101to20211231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-13</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230401to20230630_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-04-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20240401Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain xmlns:us-gaap="http://fasb.org/us-gaap/2023">2024-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230401Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain xmlns:us-gaap="http://fasb.org/us-gaap/2023">2023-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20250401Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis"><us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain xmlns:us-gaap="http://fasb.org/us-gaap/2023">2025-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_PrimeRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_FederalFundsEffectiveSwapRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:FederalFundsEffectiveSwapRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20210721_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-07-21</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20220401to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-04-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220101to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001017303</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-01-01</xbrli:startDate><xbrli:endDate>2022-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="U001"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U002"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="U003"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:unit id="U004"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit></ix:resources></ix:header></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 12pt; font-weight: bold;"><span style="font-size: 14pt; font-family: 'Times New Roman';">
        </span><hr style="border: none; border-bottom: 1px solid black; border-top: 4px solid black; height: 10px; color: #ffffff; background-color: #ffffff; text-align: center; margin-left: auto; margin-right: auto;" /><span style="font-size: 14pt; font-family: 'Times New Roman';">UNITED STATES</span></div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 14pt; font-weight: bold;">SECURITIES AND EXCHANGE COMMISSION</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 12pt; font-weight: bold;">Washington, D.C.&#160; 20549</div>

    <div style="text-align: justify;"><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 12pt; font-weight: bold;"><span style="font-size: 18pt; font-family: 'Times New Roman';">FORM <ix:nonNumeric name="dei:DocumentType" id="Fact_886b09ce1319428faaca8f0810a523c1" contextRef="c20230101to20230630">10-Q</ix:nonNumeric></span></div>

    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">(Mark One)</div>

    <table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 45pt; vertical-align: top; font-family: 'Segoe UI Symbol'; font-size: 10pt;"><ix:nonNumeric name="dei:DocumentQuarterlyReport" id="Fact_1686c95153884c3a801932e596f49083" contextRef="c20230101to20230630" format="ixt-sec:boolballotbox">&#x2612;</ix:nonNumeric></td>

    <td style="width: auto; vertical-align: top; text-align: left;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</div>
          </td>

  </tr>


</table>
    <div style="text-align: center;"><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">For the quarterly period ended: <ix:nonNumeric name="dei:DocumentPeriodEndDate" id="Fact_92aebd7dd3f64c6fa6b9c016d06cc2ee" contextRef="c20230101to20230630" format="ixt:date-monthname-day-year-en">June 30, 2023</ix:nonNumeric></div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">or</div>

    <div style="text-align: left;"><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 45pt; vertical-align: top; font-family: 'Segoe UI Symbol'; font-size: 10pt;"><ix:nonNumeric name="dei:DocumentTransitionReport" id="Fact_7378b15d4f6f47929ea736e9fe053c19" contextRef="c20230101to20230630" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric></td>

    <td style="width: auto; vertical-align: top; text-align: left;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</div>
          </td>

  </tr>


</table>
    <div style="text-align: left;"><br />
    </div>

    <div style="text-align: left; text-indent: 0pt; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">For the transition period from _______________ to _______________.</div>

    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">Commission file number:</span>&#160;<ix:nonNumeric name="dei:EntityFileNumber" id="Fact_305f400540d14effbac8b0fe6e7ce364" contextRef="c20230101to20230630">0-21121</ix:nonNumeric></div>

    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">
      <hr style="height: 1px; width: 30%; color: #000000; background-color: #000000; text-align: center; border: none; margin-left: auto; margin-right: auto;" /></div>

    <div style="text-align: center;"><img width="331" height="76" src="image0.jpg" alt="graphic" /></div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 1pt;"><ix:nonNumeric name="dei:EntityRegistrantName" id="Fact_8de05c7335684708bf50b33e5105529c" contextRef="c20230101to20230630">TRANSACT TECHNOLOGIES INC</ix:nonNumeric></div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">
      <hr style="height: 1px; width: 30%; color: #000000; background-color: #000000; text-align: center; border: none; margin-left: auto; margin-right: auto;" /></div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Exact name of registrant as specified in its charter)</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 49%; vertical-align: top; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" id="Fact_78c06e5e24ae4b44a143c6868512320a" contextRef="c20230101to20230630" format="ixt-sec:stateprovnameen">Delaware</ix:nonNumeric></div>
          </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 49%; vertical-align: top; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" id="Fact_0dd2ff7354a94eb5ab8c0f6c17ccddef" contextRef="c20230101to20230630">06-1456680</ix:nonNumeric></div>
          </td>

  </tr>

  <tr>

    <td style="width: 49%; vertical-align: top;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(State or Other Jurisdiction of Incorporation or Organization)</div>
          </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 49%; vertical-align: top;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(I.R.S. Employer Identification No.)</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 49.01%; vertical-align: top; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" id="Fact_754a1b1e742d42f7bcec5a933a6dd083" contextRef="c20230101to20230630">One Hamden Center</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressAddressLine2" id="Fact_0c0cc5f3b2cc4755ba438bd133d70e84" contextRef="c20230101to20230630">2319 Whitney Avenue, Suite 3B</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_438401551b9d4b1fb674699bda38575d" contextRef="c20230101to20230630">Hamden</ix:nonNumeric>,
              <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_b730829a0ea54139ad48faca36ac7322" contextRef="c20230101to20230630">CT</ix:nonNumeric></div>
          </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 48.99%; vertical-align: bottom; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="dei:EntityAddressPostalZipCode" id="Fact_a1c839e3fadc4f82ba79767c0aa853ed" contextRef="c20230101to20230630">06518</ix:nonNumeric></div>
          </td>

  </tr>

  <tr>

    <td style="width: 49.01%; vertical-align: top;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Address of Principal Executive Offices)</div>
          </td>

    <td style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 48.99%; vertical-align: top;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Zip Code)</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 100%; vertical-align: top; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonNumeric name="dei:CityAreaCode" id="Fact_74b2c10b22854538bd408db1ad130a3f" contextRef="c20230101to20230630">203</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_c02e3624f709476db7740fbd35fa95ef" contextRef="c20230101to20230630">859-6800</ix:nonNumeric></div>
          </td>

  </tr>

  <tr>

    <td style="width: 100%; vertical-align: top;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Registrant&#8217;s Telephone Number, Including Area Code)</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Former name, former address and former fiscal year, if changed since last report.)</div>

    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Securities registered pursuant to Section 12(b) of the Act:</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 29.52%; vertical-align: middle; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Title of each class</div>
          </td>

    <td style="width: 1.94%; vertical-align: middle;">&#160;</td>

    <td style="width: 33.75%; vertical-align: middle; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Trading Symbol(s)</div>
          </td>

    <td style="width: 1.81%; vertical-align: middle;">&#160;</td>

    <td style="width: 32.98%; vertical-align: middle; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Name of each exchange on which registered</div>
          </td>

  </tr>

  <tr>

    <td style="width: 29.52%; vertical-align: middle;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:Security12bTitle" id="Fact_c228ba241937477f9026489aa922472c" contextRef="c20230101to20230630">Common stock, par value $0.01 per share</ix:nonNumeric></div>
          </td>

    <td style="width: 1.94%; vertical-align: middle;">&#160;</td>

    <td style="width: 33.75%; vertical-align: middle;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:TradingSymbol" id="Fact_d76baeb726674419b52e54bf30dbd9d3" contextRef="c20230101to20230630">TACT</ix:nonNumeric></div>
          </td>

    <td style="width: 1.81%; vertical-align: middle;">&#160;</td>

    <td style="width: 32.98%; vertical-align: middle;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:SecurityExchangeName" id="Fact_70a5c884ee564c2fb80da45ea8a92cc7" contextRef="c20230101to20230630" format="ixt-sec:exchnameen">NASDAQ Global Market</ix:nonNumeric></div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the
      preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.&#160; <ix:nonNumeric name="dei:EntityCurrentReportingStatus" id="Fact_fe02e56cb60e42d39708a85580fb34ec" contextRef="c20230101to20230630">Yes</ix:nonNumeric>&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span>&#160;&#160; No&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>

    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T
      (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).&#160; <ix:nonNumeric name="dei:EntityInteractiveDataCurrent" id="Fact_5b18459b2d664aec9e7d91800a2017c2" contextRef="c20230101to20230630">Yes</ix:nonNumeric>&#160;
      <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span>&#160;&#160; No&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>

    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging
      growth company.&#160; See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 57%; vertical-align: top;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Large accelerated filer&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>
          </td>

    <td style="width: 43%; vertical-align: top;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Accelerated filer <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>
          </td>

  </tr>

  <tr>

    <td style="width: 57%; vertical-align: top;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:EntityFilerCategory" id="Fact_4ac6bc601e9349b49291e7725f7955a9" contextRef="c20230101to20230630" format="ixt-sec:entityfilercategoryen">Non-accelerated filer</ix:nonNumeric>&#160;<span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span></div>
          </td>

    <td style="width: 43%; vertical-align: top;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Smaller reporting company&#160; <span style="font-size: 10pt; font-family: 'Segoe UI Symbol';"><ix:nonNumeric name="dei:EntitySmallBusiness" id="Fact_4f1b0dc85d9c4067bcda0782be8195fc" contextRef="c20230101to20230630" format="ixt-sec:boolballotbox">&#x2612;</ix:nonNumeric></span></div>
          </td>

  </tr>

  <tr>

    <td style="width: 57%; vertical-align: top;">&#160;</td>

    <td style="width: 43%; vertical-align: top;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Emerging growth company&#160; <span style="font-size: 10pt; font-family: 'Segoe UI Symbol';"><ix:nonNumeric name="dei:EntityEmergingGrowthCompany" id="Fact_548b8131cdbf42a5b1b41c31010d8588" contextRef="c20230101to20230630" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric></span></div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised
      financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9744;</span></div>

    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act).&#160; Yes&#160; <span style="font-size: 10pt; font-family: 'Segoe UI Symbol';"><ix:nonNumeric name="dei:EntityShellCompany" id="Fact_a4d65da622294640a7cd29bc78c32a56" contextRef="c20230101to20230630" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric></span>&#160;&#160; No&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">&#9746;</span></div>

    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">As of July 31, 2023, the number of shares outstanding
      of the Registrant&#8217;s common stock, par value $0.01 per share, was <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" id="Fact_fc8900f4d24e4789a73707edd30ab8ca" contextRef="c20230731" unitRef="U001" decimals="INF" scale="0" format="ixt:num-dot-decimal">9,958,118</ix:nonFraction>.</div>

    <div><br />
    </div>

    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
      <hr style="border: none; border-bottom: 4px solid black; border-top: 1px solid black; height: 10px; color: #ffffff; background-color: #ffffff; text-align: center; margin-left: auto; margin-right: auto;" /></div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageFooter" style="width: 100%;"></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;"></div>

    </div>

    <!--PROfilePageNumberReset%Num%2%%%-->
    <div class="BRPFPageFooter" style="width: 100%;"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><span style="text-decoration: underline;">TRANSACT TECHNOLOGIES INCORPORATED</span></div>

    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><a id="INDEX"><!--Anchor--></a><span style="font-size: 10pt; font-family: 'Times New Roman';"><span style="text-decoration: underline;">INDEX</span></span></div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 91.66%; vertical-align: top;" colspan="2">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">PART I - Financial Information:</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; border-bottom: #000000 2px solid;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Page</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 1</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Financial Statements (unaudited)</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#BS">Condensed Consolidated Balance Sheets</a> as of June 30, 2023 and December 31, 2022</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">3</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#OPERATIONSQ2Q3">Condensed Consolidated Statements of Operations</a><span style="font-size: 10pt; font-family: 'Times New Roman';"> for the </span>three and six months ended<span style="font-size: 10pt; font-family: 'Times New Roman';">&#160;</span>June 30, 2023<span style="font-size: 10pt; font-family: 'Times New Roman';"> and </span>2022</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">4</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#COMPREHENSIVEQ2Q3">Condensed Consolidated Statements of Comprehensive Income (Loss)</a> for the three and six months ended&#160;June 30, 2023 and 2022</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">5</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#CF">Condensed Consolidated Statements of Cash Flows</a> for the six months ended June 30, 2023 and 2022</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">6</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#EQUITY2Q3">Condensed Consolidated Statements of Changes in Shareholders&#8217; Equity</a> for the three and six months ended&#160;June 30, 2023 and 2022</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">7</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#NOTES">Notes to Condensed Consolidated Financial Statements</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">8</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 2</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#Item2.">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">14</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 3</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#Item3.">Quantitative and Qualitative Disclosures About Market Risk</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">26</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 4</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#Item4.">Controls and Procedures</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">26</div>
          </td>

  </tr>

  <tr>

    <td style="width: 91.66%; vertical-align: top; background-color: #FFFFFF;" colspan="2">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91.66%; vertical-align: top; background-color: #CCEEFF;" colspan="2">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">PART II - Other Information:</div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 1</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a style="font-family: 'Times New Roman'; font-size: 10pt;" href="#LEGAL">Legal Proceedings</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 1A</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a style="font-family: 'Times New Roman'; font-size: 10pt;" href="#RISKFACTORS">Risk Factors</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 2</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a style="font-family: 'Times New Roman'; font-size: 10pt;" href="#UNREGISTEREDSALES">Unregistered Sales of Equity Securities and Use of Proceeds</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 3</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a style="font-family: 'Times New Roman'; font-size: 10pt;" href="#DEFAULTS">Defaults Upon Senior Securities</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 4</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a style="font-family: 'Times New Roman'; font-size: 10pt;" href="#MINESAFETY">Mine Safety Disclosures</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 5</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a style="font-family: 'Times New Roman'; font-size: 10pt;" href="#OTHERINFORMATION">Other Information</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; text-indent: -36pt; margin-right: 3.3pt; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 82.62%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 9.04%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Item 6</div>
          </td>

    <td style="width: 82.62%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#EXHIBITS">Exhibits</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">27</div>
          </td>

  </tr>

  <tr>

    <td style="width: 91.66%; vertical-align: top; background-color: #FFFFFF;" colspan="2">&#160;</td>

    <td style="width: 8.34%; vertical-align: top; background-color: #FFFFFF;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 91.66%; vertical-align: top; background-color: #CCEEFF;" colspan="2">
            <div style="text-align: justify; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;"><a href="#SIGNATURES">SIGNATURES</a></div>
          </td>

    <td style="width: 8.34%; vertical-align: top; background-color: #CCEEFF;">
            <div style="text-align: center; margin-right: 3.3pt; font-family: 'Times New Roman'; font-size: 10pt;">28</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; background-color: #FFFFFF;">

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">2</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">PART I - FINANCIAL INFORMATION</div>

    <div style="text-align: left;"><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Item 1.</td>

    <td style="width: auto; vertical-align: top; text-align: left;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">FINANCIAL STATEMENTS</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">C<a id="BS"><!--Anchor--></a>ONDENSED CONSOLIDATED BALANCE SHEETS</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(unaudited)</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Assets:</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands, except share data)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Current assets:</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Cash and cash equivalents</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_9545a49ad3d543b0896dd9272bff8ec0" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,756</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_79d2005e987a4548921e867e25a6bd0f" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,946</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Accounts receivable, net</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_60e5e2257d5f44d28c7bd3662a9eac07" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,441</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_abefc36c1ae449fcba47d509aba86455" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,927</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Employee retention credit receivable</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NontradeReceivablesCurrent" id="Fact_88b4a608b8e9480e8fdc146ca581099b" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:NontradeReceivablesCurrent" id="Fact_9fe35daaff0e4007ac1edc5b88a3b85b" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,500</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Inventories</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_d03c1f0cd48c4a74934c0a0fe725b242" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,408</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_3840486e7e1b46a4a53be4b043b325a9" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,028</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Other current assets</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_90017476b5684f599ccd0152ae0da5d5" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">707</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_5720f37690ab4430bb1bdbd14eae38bf" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">724</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Total current assets</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_16719f84d34f40c3821c8395afb4dc2c" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">41,312</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_b1a7120875ef47c0945493ad3d1b64c0" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">36,125</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Fixed assets, net of accumulated depreciation of $<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" id="Fact_a63019cf27354cba8c11148bfe6a90a2" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,193</ix:nonFraction>
                and $<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" id="Fact_df75900ca674492fbf4291e695f2d309" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,656</ix:nonFraction>, respectively</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_46fce8a80fb34bb3917a900ce443a3ef" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,838</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_c3113b03e3214dfd815dabe4cf443eb5" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,781</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Right-of-use asset, net</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" id="Fact_4396a028fc334f24a5df3f57fe4f8e04" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,053</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" id="Fact_00edefeb691f4b78bc02ece31117e7a1" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,488</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Goodwill</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:Goodwill" id="Fact_107b8a99003f42839c997377b656eab8" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,621</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Goodwill" id="Fact_f328c52accc94aec942a2a0774fee57e" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,621</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred tax assets</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_872073df1f6c48b9aecba0e57f286846" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,565</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_a6af3d6a87fb4cfbaeb4458816b0856e" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,327</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Intangible assets, net of accumulated amortization of $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" id="Fact_d8224e74569a4e3191d01a5cb9c28088" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,441</ix:nonFraction></span> and $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" id="Fact_747c800b69ba4a64b7549d2f3f79ed6a" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,364</ix:nonFraction></span>, respectively</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" id="Fact_2fdfe03b481d4489953b729f81da02d0" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">165</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IntangibleAssetsNetExcludingGoodwill" id="Fact_f75e614abeaf4e66898ae9d40471df1e" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">242</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; text-indent: -9pt; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Other assets</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" id="Fact_1bd2eb562726423ea09df8a92082cab5" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">333</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" id="Fact_b54e0ccdac0f46ec989eb64bcc818169" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">248</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AssetsNoncurrent" id="Fact_2adbc4026515413c94aaf3fd0883da2a" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,575</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AssetsNoncurrent" id="Fact_a706d5a309bc439a9a462d605a63013b" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,707</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total assets</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:Assets" id="Fact_7f7a654222eb498faf894fdd789f1825" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,887</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Assets" id="Fact_fa58f07501484106a34accb906a8c15b" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,832</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Liabilities and Shareholders&#8217; Equity:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Current liabilities:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Current portion of revolving loan payable</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" id="Fact_fb9ce4aa49b44977a5a2fd702ed4f6d1" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,250</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LinesOfCreditCurrent" id="Fact_549f1159db934c52ab6087c6fd0de80e" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,250</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Accounts payable</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" id="Fact_29ae2208e0014023a7d1d08d708136b0" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,321</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccountsPayableCurrent" id="Fact_d417e6fd989749e9a25794a244257b5d" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,395</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Accrued liabilities</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" id="Fact_62fd24808fc344a6a49b70d69a9eb283" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,511</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AccruedLiabilitiesCurrent" id="Fact_ed20023c541a468f9ba16a1709755342" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,077</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Lease liability</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" id="Fact_fb57f0a320d747e7b555e9db37295675" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">904</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" id="Fact_27f63843f5fb4efa8d8c04a26c7a3451" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">875</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" id="Fact_62130f92a0fb4de699a00374df9e2c39" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,222</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" id="Fact_534d008ff360482c96bdab44bb79a838" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,329</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Total current liabilities</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_c61879ab57104a00b035ea4ca40e970b" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,208</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_d243f07976eb4140bd6509824f9282d4" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,926</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, net of current portion</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" id="Fact_ecbe4383b9e645639e84609b71e4963a" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">152</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" id="Fact_2a7427f1a4d1479bb9367cb0fb8f7ff2" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">143</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Lease liability, net of current portion</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_8ea0df603f52409f8e66263d741e885b" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,210</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_6508a0ef087344db8c33fff728350d7c" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,683</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Other liabilities</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_d1b2cadf7ffc4b21a36ab53530138603" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">227</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_ff86b3ca8e854bf6835b36659906862c" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">218</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" id="Fact_535f817e141e4937ae541d4d9218ba5a" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,589</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesNoncurrent" id="Fact_c075fce9c1f74b31bea56a88ca4ffd63" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,044</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_f1746504ba1e4d4ba7f4fb43bf60cbf3" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,797</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:Liabilities" id="Fact_6b2680fdcabe4305a19dda7044f7b86b" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,970</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Commitments and contingencies (see Notes 5 and 7)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" id="Fact_f99d3723b5c241478d8e05974209adcf" contextRef="c20230630" unitRef="U002" xsi:nil="true" format="ixt:fixed-empty"></ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" id="Fact_5ccaf4da3617441ca39ae5b35c76e01a" contextRef="c20221231" unitRef="U002" xsi:nil="true" format="ixt:fixed-empty"></ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Shareholders&#8217; equity:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Common stock, $<ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact_39ea429c0d84417a9484a774eb2a41c3" contextRef="c20221231" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact_06cf2cc8210c4875987a205b8ed9cf39" contextRef="c20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction> par
                value, <ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" id="Fact_b15604aca6ab46c88ae1119c0917d474" contextRef="c20230630" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" id="Fact_282f5e196b4f4a0a99bc379301cfb944" contextRef="c20221231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">20,000,000</ix:nonFraction></ix:nonFraction> shares authorized; <ix:nonFraction name="us-gaap:CommonStockSharesIssued" id="Fact_ecb8104a9b034e388fca335b5318adf6" contextRef="c20230630" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">14,001,935</ix:nonFraction> and <ix:nonFraction name="us-gaap:CommonStockSharesIssued" id="Fact_b879d002d5164784a1ca08f6076c3161" contextRef="c20221231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">13,956,725</ix:nonFraction> shares issued, respectively; <ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" id="Fact_4cc27091ae11412188a9a3a87d04b530" contextRef="c20230630" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">9,957,093</ix:nonFraction> and <ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" id="Fact_ab0b6328acf9414ebef9e92fe2f3d41d" contextRef="c20221231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">9,911,883</ix:nonFraction> shares
                outstanding, respectively</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CommonStockValue" id="Fact_c449457e7ea5474cb0476809f505806e" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">140</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CommonStockValue" id="Fact_4cb9cf600e80406c994caa9a7f0566d3" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Additional paid-in capital</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapitalCommonStock" id="Fact_7e390a85b2a64d2198b9ebf3f4eb9254" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,594</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdditionalPaidInCapitalCommonStock" id="Fact_b46de043e1594325a85bee6043f0d368" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,282</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Retained earnings</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" id="Fact_13cb103534e14cad818cdd51ebfd56e7" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,534</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" id="Fact_d6d929483e1740e9b400628baa42fb89" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,630</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Accumulated other comprehensive loss, net of tax</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" id="Fact_cca37ac085ae457b9a3305ce305991c2" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">68</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" id="Fact_da5857ca7537407b9284af6eafc7ae9d" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">79</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Treasury stock, at cost (<ix:nonFraction name="us-gaap:TreasuryStockCommonShares" id="Fact_6fae60eccf2d475c8da12fc9ebaa2314" contextRef="c20221231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" id="Fact_157175504c47446d89705cc6d8eed923" contextRef="c20230630" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">4,044,842</ix:nonFraction></ix:nonFraction>
                shares)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:TreasuryStockValue" id="Fact_07a397dc2c7d46af8e0e83f5c281419a" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,110</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:TreasuryStockValue" id="Fact_3bac9342585e4776b72860c745737a9d" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,110</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Total shareholders&#8217; equity</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_38a67896ed45462992c56a66de031422" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,090</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_0da25a5135f540e1a183d656b4a28e62" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,862</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total liabilities and shareholders&#8217; equity</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" id="Fact_f8f29ef1ddd84752b71a18240c11e797" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,887</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" id="Fact_8a0b455e85884e61b68700230681cc8d" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">51,832</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
    <div style="text-align: left;"><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">See notes to Condensed Consolidated Financial Statements.</div>

    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">3</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">CONDE<a id="IS"><!--Anchor--></a>NSED CONSOLIDATED STATEMENTS OF <a id="OPERATIONSQ2Q3"><!--Anchor--></a>OPERATIONS</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(unaudited)</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"></td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands, except per share data)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net sales</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_49c6cc78cb9c4f16ad9e9c913510aee7" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,906</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_51d679c0e51242ab863356c8f875a424" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,623</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_42290161cb504f619fc87332aa9afaa2" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,176</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_66ec76a9addc47ec8661c8bffdec0503" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,325</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cost of sales</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CostOfRevenue" id="Fact_40e9cc34b816444eab7d05ea77cac34a" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,048</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CostOfRevenue" id="Fact_5606c40230f942b78a29aaa1343a4c0a" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,189</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:CostOfRevenue" id="Fact_07f69094300d440783aade153456c8a5" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,063</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:CostOfRevenue" id="Fact_b71c3b6d93ab46199ae89d279fa2e88c" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">14,325</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Gross profit</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_a02ec46bb6ed44ffb4ebf386337ddd75" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,858</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_3c7b28e19b7b4d458400ae8cdd59c6f0" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,434</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_d4f9a5aacb434db1ae45e48596644d89" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,113</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_7c74776ee7e94afc86d70ea72d3d261a" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,000</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating expenses:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Engineering, design and product development</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_0af4585430c547389149a8fc4d2ab6a1" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,505</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_2257ce4f7617466687fd323d0c2fc2d4" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,172</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_f3c8c43a6ab742d69b369c3c858ed9a7" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,774</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:ResearchAndDevelopmentExpense" id="Fact_fad5b57419ea474699462975a8f621d7" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,455</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Selling and marketing</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" id="Fact_eb02a341128543619133f47852a1b626" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,684</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" id="Fact_6c680ac3b6be45d580342bef899dc8de" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,293</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" id="Fact_d40f1befa01840498ca7f0f9e6ce3ed8" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,441</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:SellingAndMarketingExpense" id="Fact_8efc22ae8e1d45f7a3667ee4dbfa9dc9" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,976</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">General and administrative</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" id="Fact_98edf18897ef4766b2beef888a7d97a3" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,445</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" id="Fact_3ea23dae3121423680384154f2ec8ce5" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,923</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" id="Fact_50163940642e4c48af9bf638e18ad99a" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,861</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:GeneralAndAdministrativeExpense" id="Fact_41f0d339f89b4e17a14974cbed037a77" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,127</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_d06fb4a0cd4e43efbcfdb66b970476ba" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,634</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_bc2c69b6d1ba44b4b0eb5bf7882e6fc0" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,388</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_b146974963764fdcaee4f86384088b3c" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">18,076</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:OperatingExpenses" id="Fact_e309e854424843a28b6c981bfe6eb5e6" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,558</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating income (loss)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_7da6322377214027b339353987ab3321" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,224</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_ce31d0b4e9ea4d889ff8a413f2c0fd81" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,954</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_0eda16b0d75f4336b8c841c03362363f" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,037</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_4023e22e217f4cbf9c97c624f25e681c" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">8,558</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Interest and other income (expense):</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Interest, net</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:InterestIncomeExpenseNonoperatingNet" id="Fact_297ec87fac744c8a84c2dadf11bda5b3" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">68</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:InterestIncomeExpenseNonoperatingNet" id="Fact_adf07c254ade4d0180bf9a91aaffee58" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">28</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">(<ix:nonFraction name="us-gaap:InterestIncomeExpenseNonoperatingNet" id="Fact_05e4b36600674ef4a1d87a88faf01bd3" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">134</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:InterestIncomeExpenseNonoperatingNet" id="Fact_2fdcbde50714462cb851ab7b9b50d76f" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">92</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Other, net</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_72b0009b6a3a4cec965777db6626d302" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_55aa42d95bf54f9a8beb7daac51556b2" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">264</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_e04b0489c43d46f9997ceffc68489e58" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">21</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_38cf51bc80a2442d87d007486c7fb316" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">299</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" id="Fact_33f3d872c42245ffb287a645220f60c4" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">68</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" id="Fact_18b3cc8c8c764f08b4e002643c54ec21" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">292</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" id="Fact_3456c30c9ef24036b05a1253c21f05e2" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">113</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" id="Fact_e05de8040384487ab1689461424f51f1" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">391</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income (loss) before income taxes</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_f32440d359834ea9900cf6dd7c0a975c" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,156</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_0640542abe9041ebb96571a68fb80f59" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3,246</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_9ade661ccc6543f6bf2983e4f02af2a4" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,924</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_e63837c2d4d548f9874bf42c8ea0d0f3" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">8,949</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Income tax (expense) benefit</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_d0af00eccf33479292816367e493f429" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">391</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_e2b302d3fd5345728f4b40b50dd58200" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">870</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_c69f93e9134142e48ff692d1d2e742eb" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,020</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_8f414623b24f4de4a493f4326385100c" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,225</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_e065af5327d74da7beeaef64f6c7f256" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">765</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_4d00248474644d95b9cc7bc357a2936a" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,376</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_0d94a1fe2e3f40db80a4171d8556b7db" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,904</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_be49de130d0446d1a5f2daaf9b3dd8ee" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,724</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss) per common share:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_7ae152d9ac404b1dadf2bd3e08770b39" contextRef="c20230401to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.08</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_918e2ea5d13a42b692928ab5221bc281" contextRef="c20220401to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.24</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_68d36bf84dc74a5b9b746dd6f1211169" contextRef="c20230101to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.39</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">(<ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_5db1e471ce5845b08cdda3146915319f" contextRef="c20220101to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.68</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_7e5e5c98a5e54b439719225af95f3b6b" contextRef="c20230401to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.08</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_0d98b358f5b54afe9291c2667c71cf92" contextRef="c20220401to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.24</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_77670d5fccda4dfe918123f15dd647fc" contextRef="c20230101to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.39</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_acc8e5a83df74bcaa3aad77aab046ddb" contextRef="c20220101to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.68</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Shares used in per-share calculation:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_058991bb13eb4c9994a5685f82a5305e" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,956</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_d9626428f48942eb849fc2a24621f023" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,910</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_334ac136897542e8b5184ab2d8806fc8" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,943</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_0d43c95d2d7c4376b609e5180f2c7e57" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,898</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_c4b4c36c60524b1fbde9e7086ab8e89b" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,017</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_d8b28371a6194ff99fd2083d1645c22e" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,910</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_f4313d863d684b4f930eff73fb4bde9b" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,016</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_9beaf69dbfdd4de59ec26ef586307b40" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,898</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
    <div style="text-align: left;"><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">See notes to Condensed Consolidated Financial Statements.</div>

    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">4</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">CONDENSED CONSOLI<a id="CI"><!--Anchor--></a>DATED STATEMENTS OF <a id="COMPREHENSIVEQ2Q3"><!--Anchor--></a>COMPREHENSIVE INCOME (LOSS)</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(unaudited)</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="14">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_d6ebdb0c01d041b7900773aae457439d" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">765</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_4722b7456d3649cdab8005ec69d2eb33" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,376</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" colspan="1"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_4aaa4a77b11d4ee59e0ba240a12d3998" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,904</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1"></td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_a72161b5337b4b589e95b7d6420b4d65" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,724</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Foreign currency translation adjustment, net of tax</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_f63b9bc957914b1f87f9a3d4efa14893" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_beb62e61b110465894146699aa3fce9b" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">8</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" colspan="1"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_cc9d95a546444450b5a7b7586806318e" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">11</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1"></td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_830dd705145e4d62a45227e59728a41b" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">50</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Comprehensive income (loss)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_ff73052f574d4d07b3cb1d86dc2d8c12" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">774</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_65043afb9b734f58b008d3e568422635" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,384</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" colspan="1"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_ba70bd8b1eb34b98a48225a9da67114e" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,915</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1"></td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">$</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">(<ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTax" id="Fact_ec5ae3e6543447ce8660b0287281ff0d" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,774</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">)</td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">See notes to Condensed Consolidated Financial Statements.</div>

    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">5</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">CONDE<a id="CF"><!--Anchor--></a>NSED CONSOLIDATED STATEMENTS OF CASH FLOWS</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(unaudited)</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;" rowspan="1"></td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" rowspan="1"></td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash flows from operating activities:</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_ebedc51791cd4d459046e0ac5cae7241" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,904</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_517c59a8241a46af815fcd9d4c23226c" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,724</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation expense</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_0b808d51ba5f42faafe98e5c2c5297a2" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">398</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_708d8cc7bfc64a1ea90658a26fbaf49b" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">581</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Depreciation and amortization</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" id="Fact_5266bb4f7af442bfbec85e8a4ab01472" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">722</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:DepreciationAndAmortization" id="Fact_441ceb2a77dc4985a0b5d2a919948f1a" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">625</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Deferred income taxes</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_885a8144395046d2b492626ae7d00325" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">762</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:DeferredIncomeTaxExpenseBenefit" id="Fact_eb1ce58252ce470194c7040f1dae2661" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,227</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Unrealized foreign currency transaction losses</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossUnrealized" id="Fact_6644e150796a4b44a931eb32810f6467" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">21</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ForeignCurrencyTransactionGainLossUnrealized" id="Fact_bce24d138e624132853583849c0df464" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">298</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Changes in operating assets and liabilities:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt;">Accounts receivable</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_391f6f39de0e4e1aa597bdb93792a145" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">434</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_f542bba502dd45a4a522dc488fbcf532" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,547</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt;">Employee retention credit receivable</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherReceivables" id="Fact_9bc5b028bc73422e946ded50855a3315" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,500</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherReceivables" id="Fact_02fb169e94954ae29cbc1ade478c499b" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt;">Inventories</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_956978afdb154b8a9a73a5c6c3d4cee4" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,363</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_d994f7d68e87409bb95ac215f2104445" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,250</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt;">Other current and long-term assets</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" id="Fact_73939bc2b011475abcdf5fa1ebcdabcf" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">86</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" id="Fact_ffe34e83071b40da9df8f6dbcb731c36" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">26</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt;">Accounts payable</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" id="Fact_4bd726a69a034ba7830d2b1ecb7c856f" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,063</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" id="Fact_e21c508a4bb04f6481db084de4a02bc8" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">789</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 45pt; font-family: 'Times New Roman'; font-size: 10pt;">Accrued liabilities and other liabilities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" id="Fact_1da58e9e7ec54bd2bed4ef76bfb03cf8" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,329</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" id="Fact_17608c7f17c645fd8e006fa6abad5094" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">159</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;">Net cash provided by (used in) operating activities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_94ddced28c2b4e8a85612ea2b7515fea" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,690</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_97b20fe9f60b440aa3d58562a55a2ae9" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">14,588</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash flows from investing activities:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Capital expenditures</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_d6c6bfe75c754a0daea7cdecbcdb70f0" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">689</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_00369d37dd8943209aa436e2684d78dc" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">744</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;">Net cash used in investing activities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_14e6859dc7b14822abd7074dac4eb9c4" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">689</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_accd4069bd2548a69374efa2c615156b" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">744</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash flows from financing activities:</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Withholding taxes paid on stock issuances</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" id="Fact_040a7970f6a64038810565b191a82872" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">86</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" id="Fact_973488112c0b466cbb0f040c789c6b9a" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">119</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" rowspan="1">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Payment of bank financing costs<br />
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:PaymentsOfLoanCosts" id="Fact_8296134cbd614dd496be5dfae61883c7" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:PaymentsOfLoanCosts" id="Fact_dd84d33017654a0c98a1a3075a9df843" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" rowspan="1" colspan="1">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;">Net cash used in financing activities</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_a5a9ccf400c448e6942c46b746cbc3b3" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">86</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_b56f7be4b792464b87f44cdab479cde4" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">129</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Effect of exchange rate changes on cash and cash equivalents</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_79bb3569b9e447aa94b6a2caf8758a74" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">105</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_dad1013c7a334ff5b9ce9c34e27c7f1b" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">103</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Increase (decrease) in cash and cash equivalents</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_9183e56039f84365830fecea99c7f6b1" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,810</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_1e84c267cd104679b38660ead65920a4" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">15,564</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash and cash equivalents, beginning of period</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_23e315c010d94f138ef391246c71a677" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,946</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_f8b74ac0132140d2867fac9cc5c4695a" contextRef="c20211231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,457</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Cash and cash equivalents, end of period</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_fd69bcc7a52b4dd99a3a3473f49e3319" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,756</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_a2b13fa959a74262baf2daf782d4c194" contextRef="c20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,893</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">Supplemental schedule of non-cash investing activities:</span></div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Non-cash capital expenditure items</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" id="Fact_1850159952cc436bb14b8f08c30b77e6" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">41</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" id="Fact_9b71e5e6643c4c719f6d357d8808245e" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">See notes to Condensed Consolidated Financial Statements.</div>

    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">6</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">CONDENSED CONSO<a id="SSE"><!--Anchor--></a>LIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS&#8217; <a id="EQUITY2Q3"><!--Anchor--></a>EQUITY</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(unaudited)</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: top;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"></td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: top;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Equity beginning balance</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f4aa16cd41d7478c841d47d0be256687" contextRef="c20230331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">37,196</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5f0fb284521d40f1969a477f4c42036b" contextRef="c20220331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,771</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_bac51c96457a4189a1f9ec47cbaabf4c" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">33,862</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_8e290b78699a4ec8a2f2b5e906d68414" contextRef="c20211231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,984</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Common stock</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, beginning of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_213c6a6f324341dcb518f7e9684744f6" contextRef="c20230331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">140</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_8df85c86570646cebc4f654ad1b6bd15" contextRef="c20220331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_8158e2b9a0f44cd4a75c6f079bf86c52" contextRef="c20221231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5c2d78a5847f45fe8e1ea2f5e9036a90" contextRef="c20211231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Issuance of common stock from restricted stock units<br />
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" id="Fact_78a252b9a55f4f33bfadab81d5dcb069" contextRef="c20230401to20230630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" id="Fact_7e1690963fcd414b95c49020ef13bec0" contextRef="c20220401to20220630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" id="Fact_d578bcd73ae54863869eb961c0d45762" contextRef="c20230101to20230630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueNewIssues" id="Fact_24e1e79681ed436ca91fa9b5acc07e00" contextRef="c20220101to20220630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, end of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_e2fa71296c5f4eb794e8d5f8601123c4" contextRef="c20230630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">140</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_8b4324ab79f147f1ad33dc2a7f57f02a" contextRef="c20220630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_248ebbe392e64f1ab046b32f3d110e30" contextRef="c20230630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">140</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_31fa8d76540f4d0188c7b1f7de48e964" contextRef="c20220630_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">139</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Additional paid-in capital</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, beginning of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_9bb8d026c1554b119e3c7aba324d73bd" contextRef="c20230331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,474</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_3663cac3294a4a4cb4524823db928108" contextRef="c20220331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,423</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_dfc375913b684bad88935ce99234dd61" contextRef="c20221231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,282</ix:nonFraction><br />
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_fc8b02c6ee114fcb8000903a7cf8ebab" contextRef="c20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,246</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Share-based compensation expense</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_9529339b7d0b4b3b8ddbe2b97b0fb89c" contextRef="c20230401to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">120</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_904259d780b84fceb3cf30d79dbeda38" contextRef="c20220401to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">285</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_aa58902b33f8427fa07a60947e2f25b8" contextRef="c20230101to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">398</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_711ddea9b1ad49ba9218f5fe83b16537" contextRef="c20220101to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">581</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Relinquishment of stock awards to pay for withholding taxes</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited" id="Fact_b77f6a83ad524b75bad9f15f1a794460" contextRef="c20230401to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited" id="Fact_eed4cb03e1744ec4ad6e7d7673cf9e69" contextRef="c20220401to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited" id="Fact_5d0e569e13c64b8cb63d91de1cc9f3d0" contextRef="c20230101to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">86</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">(<ix:nonFraction name="us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited" id="Fact_b71a165ffa114102b8a7c0d9be0266b7" contextRef="c20220101to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">119</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, end of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_ee20d0aeada64d78a62c64d7d983cb51" contextRef="c20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,594</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_57e8618a3e294ab6826f74ae9aeaac58" contextRef="c20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,708</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_98c25c40603e42b988ef4ac3a8240f9b" contextRef="c20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,594</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_c942ca1025aa4776b0e1d3939f05730b" contextRef="c20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">55,708</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Retained earnings</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, beginning of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f7c49ba46f5746859381ac162aea6ad3" contextRef="c20230331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,769</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_863e7148ad9042e8b09913ecdb6a30d3" contextRef="c20220331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,218</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_d0563874e1284365975116ae9065d2ec" contextRef="c20221231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,630</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_747eadb37d1f4a74b76e783f8ffc7bf7" contextRef="c20211231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,566</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_794c7f1f1f0747c0b166eab5bb137f73" contextRef="c20230401to20230630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">765</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_53f91b525610417cb1b17c1e05756f4c" contextRef="c20220401to20220630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,376</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_19d34f5fc3aa414ea564ab72a48dffd3" contextRef="c20230101to20230630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,904</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_d2f6f06802e1478f977de61b42dd3a4b" contextRef="c20220101to20220630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,724</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, end of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f04487cd3ef14687bfe44a8e4274488c" contextRef="c20230630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,534</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5015c42ff0304e4cb92706ff7c221448" contextRef="c20220630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,842</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_18686c8b740c4acfa6009f3a38b9c1f1" contextRef="c20230630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,534</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_7c6779495d4949ce9c857a26bbce8489" contextRef="c20220630_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,842</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Treasury stock</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, beginning and end of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_974f190123b748bb9901787a476be433" contextRef="c20230630_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_7c935425a3aa436e834fc018e8cecb75" contextRef="c20230331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">32,110</ix:nonFraction></ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_dfae369367b9402982da3c1741d94d49" contextRef="c20220331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_162a630f7e2d4476aecd328931614c34" contextRef="c20220630_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">32,110</ix:nonFraction></ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f5b9d28ba3554817b969ce2e8dbc57b7" contextRef="c20221231_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_d6ee4801bb354420b2cacb502703510c" contextRef="c20230630_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">32,110</ix:nonFraction></ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_ca95fdbb16e643ea83eb420deac49360" contextRef="c20220630_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_086d71009b1a425d837bb2d6b110c21d" contextRef="c20211231_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">32,110</ix:nonFraction></ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Accumulated other comprehensive (loss) income, net of tax</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, beginning of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_df0a00061c014985912f3b429ce4eb27" contextRef="c20230331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">77</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_a3db16b52d3544749533d35b2f5e7bcb" contextRef="c20220331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">101</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_66a2d78dec0b49aab925c4da5b1c3fad" contextRef="c20221231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">79</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_6a77d12481474ee5b97bc2a350bed2af" contextRef="c20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">143</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">Foreign currency translation adjustment, net of tax</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_d450ef3e7c8941718919045adaebaeac" contextRef="c20230401to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_03e5fdf592384c678fc085b382aeb8d2" contextRef="c20220401to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">8</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_8343d16f68214a1a938e67bcf4f090bf" contextRef="c20230101to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">11</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_ce6079748bdf4647891477ce302b1191" contextRef="c20220101to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">50</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px;">
            <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Balance, end of period</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_6e00de8b6570493e830765533df71e0b" contextRef="c20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">68</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_45da2098693b44aa9d9b32ce5da2772e" contextRef="c20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_6287a9f74a4840e2a274a2e7292344ae" contextRef="c20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">68</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_3913f83bec424aa7a71ad0d6d2460011" contextRef="c20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 4px;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Equity ending balance</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br />
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5f4669bc5cf84dfbad84efc0d9ba1566" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,090</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br />
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_ff20ca390ae14f9a98accc831b936c38" contextRef="c20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,672</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;"><br />
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_a5d0c6125e1a49f994030d70c6c59e6a" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">38,090</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;"><br />
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_099c59fe8d264b66be8419f1476fa70a" contextRef="c20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">32,672</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; border-bottom: #000000 solid 2px;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Supplemental share information</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Issuance of shares from stock awards</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" id="Fact_35c9046a21ec4fd58d63861174b34446" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">3</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" id="Fact_3aae10d1773746a79cb0e6dbe85c7df9" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" id="Fact_9d262798bb1143da9942051e4c37702c" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">57</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" id="Fact_3624a0b068e34adeb00f20787a476f5b" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">63</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Relinquishment of stock awards to pay withholding taxes</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" id="Fact_8f46c278ce7249d096ff3f5e1597210e" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" id="Fact_d2e8e733fade4f668de0cdd0e8623e43" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" id="Fact_de360ffbf9cb493bbae73ea2f702803e" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">12</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" id="Fact_2a1308e9729149e09cec724bbdb4b623" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">26</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">See notes to Condensed Consolidated Financial Statements.</div>

    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; background-color: #FFFFFF;">

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">7</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">N<a id="NOTES"><!--Anchor--></a>OTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(unaudited)</div>

    <div><br />
    </div>

    <div class="BRPFPageFooter" style="width: 100%;"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock" id="Text_acbb907bcf6a42b08d05cc4b3e119c3c" contextRef="c20230101to20230630" escape="true" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6691">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1. Basis of presentation</div>
</ix:nonNumeric>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6691" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6692">
<div><br />
    </div>
</ix:continuation>

    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6692" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6693"><ix:nonNumeric name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="Text_aef62442dc27490e977b8a41307ebaef" contextRef="c20230101to20230630" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">The </span>accompanying unaudited financial statements of TransAct Technologies Incorporated (&#8220;TransAct&#8221;,
      the &#8220;Company&#8221;, &#8220;we&#8221;, &#8220;us&#8221;, or &#8220;our&#8221;) have been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;) for interim financial information.&#160; Accordingly, they do not include all of the
      information and footnotes required by U.S. GAAP to be included in full year financial statements.&#160; In the opinion of management, all adjustments considered necessary for a fair statement of the results for the periods presented have been included and
      are of a normal recurring nature<span style="font-size: 10pt; font-family: 'Times New Roman';">.&#160; The </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';"> Condensed Consolidated Balance Sheet data was derived from audited financial statements, but does not include all disclosures required by U.S. GAAP.&#160; These interim financial statements
        should be read in conjunction with the audited financial statements in our Annual Report on Form 10-K for the year ended </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';"> (the &#8220;2022 Form 10-K&#8221;).</span></div>
</ix:nonNumeric></ix:continuation>

    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6693" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6694">
<div style="text-align: justify;"><br />
      <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> The results of operations for the three and six months ended&#160;June 30, 2023
        are not necessarily indicative of the results to be expected for the full year ending December 31, 2023. </span> </div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6694" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6695">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6695" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6696">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6696" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6697">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Impact of the COVID-19 Pandemic and Global Supply Chain Disruptions</div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6697" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6698">
<div style="text-align: justify; margin-right: 0.1pt; margin-left: 0.1pt; font-family: 'Times New Roman'; font-size: 10pt;">Since early 2020 and into the first quarter of 2022, the COVID-19 pandemic caused uncertainty and disruption in the global
      economy and financial markets.&#160; Similar to other companies, TransAct has also been impacted by global supply chain issues, increased shipping costs and inflationary pressures, which have increased our costs and, in some instances, slowed our ability
      to deliver products to our customers.&#160; During 2021, we experienced significantly lower sales levels.&#160; However, during 2022, we were able to increase our inventory levels and minimize the impact to our customers by successfully modifying our products
      that were affected by supply chain disruptions, as well as sourcing component parts from alternate suppliers.&#160; At the same time, after a slowdown resulting from the Omicron and other variants of COVID-19 that began to ease in the first six months of
      2022, we continued to experience demand recovery during the remainder of 2022 and into 2023. Although we were able to increase inventory levels during 2022 and expect to continue to do so in the balance of 2023, there can be no assurance that new or
      continuing supply chain disruptions will not affect our products or that we will be able to make timely modifications to address any future supply chain issues that arise.&#160; Further, while we have offset most of our cost increases by increasing prices
      of our products, there can be no guarantee that we will not be impacted by the economic effects of any future cost increases that cannot be predicted, supply chain disruptions, inflationary pressures and potential new COVID-19 variants in the markets
      we serve and from which we source our supplies and parts.</div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6698" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e6699">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e6699" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66910">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Balance Sheet, Cash Flow and Liquidity. </span><span style="font-size: 10pt; font-family: 'Times New Roman';">We have taken the following actions to increase liquidity and strengthen our financial position in an effort to mitigate the negative impacts from the COVID</span>-19<span style="font-size: 10pt; font-family: 'Times New Roman';"> pandemic, supply chain disruptions and inflationary pressures:</span></div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66910" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66911">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66911" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66912">
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;"></td>

    <td style="width: 18pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#9679;</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">Employee Retention Credit &#8211; Under the provisions of the CARES Act, the Company received a refundable employee retention credit subject to certain criteria.&#160; In connection with the
              CARES Act, the Company recognized the employee retention credit during the fourth quarter of 2021 and recorded $<ix:nonFraction name="tact:GainFromEmployeeRetentionCredit" id="Fact_497a4fc5df194bc6aee8c2066fb627ea" contextRef="c20210101to20211231" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.5</ix:nonFraction> million as
              &#8220;Gain from employee retention credit&#8221; in the Consolidated Statement of Operations for the year ended December 31, 2021 and the related receivable as &#8220;Employee retention credit receivable&#8221; in the Consolidated Balance Sheet as of December 31,
              2021 and 2022.&#160; We received these funds in the first quarter of 2023.</div>
          </td>

  </tr>


</table>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66912" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66913">
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;"></td>

    <td style="width: 18pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#9679;</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">Credit Facility &#8211; On March 13, 2020, we entered into a credit facility with Siena Lending Group LLC that provides a revolving credit line of up to <span style="font-size: 10pt; font-family: 'Times New Roman';">$</span><ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_70f880d5652243ba9929b745647b7ba2" contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">10.0</ix:nonFraction><span style="font-size: 10pt; font-family: 'Times New Roman';"> million</span>,
              subject to a borrowing base, and on July 19, 2022, we entered into an amendment to extend the maturity of the facility to March 13, 2025.&#160; See Note 5 for further details regarding this facility.</div>
          </td>

  </tr>


</table>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66913" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66914">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66914" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66915">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">After reviewing whether conditions and/or events raise substantial doubt about our ability to meet future financial obligations over the 12 months following the date on
      which the Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q were issued, including consideration of the actions to manage expenses and liquidity, we believe that our net cash to be provided by operations
      combined with our cash and cash equivalents and borrowing availability under our revolving credit facility will provide sufficient liquidity to fund our current obligations, capital spending, and working capital requirements and to comply with the
      financial covenants of our credit facility over at least 12 months following the date that the Condensed Consolidated Financial Statements were issued.</div>
</ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66915" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66916">
<div><br />
    </div>
</ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">8</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>


    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66916" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66917"><ix:nonNumeric name="us-gaap:UseOfEstimates" id="Text_1ae2b40b68c84f8190c1283a27d13d74" contextRef="c20230101to20230630" escape="true" continuedAt="Text_f54805a9a6b642a1a9e362dafd7431d71">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Use of Assumptions and Estimates</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66917" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66918"><ix:continuation id="Text_f54805a9a6b642a1a9e362dafd7431d71" continuedAt="Text_f54805a9a6b642a1a9e362dafd7431d72">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Management&#8217;s belief that the Company will be able to fund its planned operations over the 12 months following the date on which the Condensed Consolidated Financial
      Statements were issued is based on assumptions which involve significant judgment and estimates of future revenues, inflation, rising interest rates, capital expenditures and other operating costs. Our current assumptions are that casinos and
      restaurants will remain open and consumer traffic will continue to remain strong during the remainder of 2023. Though demand for our products at casinos has increased substantially in 2022 and during the first six months of 2023, we cannot predict
      the ultimate impact of the current economic environment, including inflation, rising interest rates and supply chain disruptions on our customers, which may impact sales. We believe that we are positioned to withstand the impact of any potential
      economic downturn or slower than anticipated economic recovery. However, should conditions warrant, we believe we will be able to take additional financial and operational actions to cut costs and/or increase liquidity.</div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66918" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66919"><ix:continuation id="Text_f54805a9a6b642a1a9e362dafd7431d72" continuedAt="Text_f54805a9a6b642a1a9e362dafd7431d73">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66919" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66920"><ix:continuation id="Text_f54805a9a6b642a1a9e362dafd7431d73">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In addition, the presentation of the accompanying unaudited financial statements requires us to make estimates and judgments that affect the reported amounts of assets,
      liabilities, revenue and expenses, and the disclosure of contingent assets and liabilities.&#160; Our estimates include those related to revenue recognition, accounts receivable, inventory obsolescence, goodwill and intangible assets, the valuation of
      deferred tax assets and liabilities, depreciable lives of equipment, share-based compensation and contingent liabilities.&#160; We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the
      circumstances.&#160; Actual results could differ from those estimates used.</div>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66920" continuedAt="Text_48d1b3459fdd4a2aaa818d7e87d1e66921">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br />
    </div>
</ix:continuation>
    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:continuation id="Text_48d1b3459fdd4a2aaa818d7e87d1e66921"><ix:nonNumeric name="us-gaap:PriorPeriodReclassificationAdjustmentDescription" id="Text_8abadc33c79b47d384c518956a4f69d3" contextRef="c20230101to20230630" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Certain reclassifications have been made to prior year financial statements to conform to classifications used in the current year.</div>
</ix:nonNumeric></ix:continuation>
       </div>
<div>
    &#160;
    </div>
<div class="BRPFPageFooter" style="width: 100%;"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" id="Text_64118e6f160d487d983651d809b928e0" contextRef="c20230101to20230630" escape="true" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d71">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2. Significant accounting policies</div>
</ix:nonNumeric>
    <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d71" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d72">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d72" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d73">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For a discussion of our significant accounting policies, see Note 2, <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Summary of
        significant accounting policies</span> within Part II, Item 8. &#8220;Financial Statements and Supplementary Data&#8221; in the 2022 Form 10-K for the year ended December 31, 2022.&#160; There have been no changes to our significant accounting policies since our
      2022 Form 10-K for the year ended December 31, 2022.</div>
</ix:continuation>
    <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d73" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d74">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br />
    </div>
</ix:continuation>
    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d74" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d75">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Recently Adopted Accounting Pronouncement</div>
</ix:continuation>

      <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d75" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d76"><ix:nonNumeric name="us-gaap:CreditLossFinancialInstrumentPolicyTextBlock" id="Text_61495a6afcab4de5be0e7b9afd895751" contextRef="c20230101to20230630" escape="true" continuedAt="Text_7b0e87eb56554fcea6c8c16d97af23f11">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In June 2016, the FASB issued ASU 2016-13, <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Financial Instruments - Credit Losses
          (Topic 326): Measurement of Credit Losses on Financial Instruments</span>. This ASU and its related amendments (collectively, the &#8220;Credit Loss Standard&#8221;) modifies the impairment model to utilize an expected loss methodology in place of the
        incurred loss methodology for financial instruments, including trade receivables, contract assets and off-balance sheet credit exposures. The Credit Loss Standard requires consideration of a broader range of information to estimate expected credit
        losses, including historical information, current economic conditions and a reasonable forecast period. This Credit Loss Standard requires that the statement of operations reflect estimates of expected credit losses for newly recognized financial
        assets as well as changes in the estimate of expected credit losses that have taken place during the period, which may result in earlier recognition of certain losses.</div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d76" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d77"><ix:continuation id="Text_7b0e87eb56554fcea6c8c16d97af23f11" continuedAt="Text_7b0e87eb56554fcea6c8c16d97af23f12">
<div><br />
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d77" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d78"><ix:continuation id="Text_7b0e87eb56554fcea6c8c16d97af23f12" continuedAt="Text_7b0e87eb56554fcea6c8c16d97af23f13">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We adopted this standard effective January 1, 2023, and this standard did not have a material impact on the Company&#8217;s Condensed Consolidated Financial Statements.</div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d78" continuedAt="Text_311e4624f6db47c9ae438d1b77a3b0d79"><ix:continuation id="Text_7b0e87eb56554fcea6c8c16d97af23f13" continuedAt="Text_7b0e87eb56554fcea6c8c16d97af23f14">
<div><br />
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_311e4624f6db47c9ae438d1b77a3b0d79"><ix:continuation id="Text_7b0e87eb56554fcea6c8c16d97af23f14">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are exposed to credit losses primarily through our sales of products and software to commercial customers which are recorded as Accounts receivable, net on the
        Condensed Consolidated Balance Sheets. Our method for developing our allowance for credit losses involves making informed judgments regarding whether an adjustment is necessary to our historical loss experiences to reflect our expectations around
        current economic conditions and reasonable and supportable forecast periods, where applicable. We utilize current economic market data as well as other internal and external information available to us to inform our decision making in this process.</div>
</ix:continuation></ix:continuation>
       </div>


    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">9</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>


    <ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="Text_d00dd41dcae2499489ddfa5ebb44e3c4" contextRef="c20230101to20230630" escape="true" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3. Revenue</div>
</ix:nonNumeric>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf1" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf2">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf2" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf3">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">We account for revenue in accordance with ASC Topic 606: Revenue from Contracts with Customers.</div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf3" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf4">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf4" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf5">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Disaggregation of revenue</div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf5" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf6">
<div><br />
    </div>
</ix:continuation>

    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf6" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf7"><ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="Text_7e819fdbddc043a58a4ae109b1dea57d" contextRef="c20230101to20230630" escape="true" continuedAt="Text_fd63516a9584469ba296e78e1a6ecde01">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following tables disaggregate our revenue by market type, as we believe this best depicts how the nature, amount, timing and uncertainty of our revenue and cash
      flows are affected by economic factors.&#160; Sales and usage-based taxes are excluded from revenues.</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf7" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf8"><ix:continuation id="Text_fd63516a9584469ba296e78e1a6ecde01" continuedAt="Text_fd63516a9584469ba296e78e1a6ecde02">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf8" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf9"><ix:continuation id="Text_fd63516a9584469ba296e78e1a6ecde02" continuedAt="Text_fd63516a9584469ba296e78e1a6ecde03">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="22" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="22" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Food service technology</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_03936a1810e54ec8897d536efbe2742d" contextRef="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,625</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_3daf8131869f4535a92d0c4e048d7fd8" contextRef="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">270</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_1c86f919c95f48b596dab159c6dd3451" contextRef="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,895</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ee7e4e3ff4854951b0edc33a861a9848" contextRef="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,281</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_cf9f523e62f14f8e9af63c4d96d20fdc" contextRef="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">151</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_95e2321299304f48b96ed21bf5cd7429" contextRef="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,432</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">POS automation</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_63a061f76ad946fe9975c15269d6228c" contextRef="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,904</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_33b5352eb37b4ce68d9589ffe6ee0b8a" contextRef="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2f3ec274d940491591dcbd4aa0e877a9" contextRef="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,904</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_9715127896974ee680dd4ec71a41f772" contextRef="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,172</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_c3cde665822f4b90b00169cdcb39dc6f" contextRef="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_acee5c41323e449a81c8bfbbc7dfd384" contextRef="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,172</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Casino and gaming</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_dd0b56723b03402da5f5723b47fdc6b0" contextRef="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,475</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_3f041f7bf96d4d2bbc59d270eeef8d74" contextRef="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,697</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ad5a6422afc64ef99a1531223484e318" contextRef="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,172</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_c13378eb960c43a28f38aa8c62abd398" contextRef="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,929</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_09895c3f427543258724feddc44efd8f" contextRef="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,596</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_e3d1476cde104d3aadf0013fea5fa977" contextRef="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,525</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Transact Services Group</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_3c4fef92588840249c6fb3569f7e22a0" contextRef="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,721</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_a2ad909fc64b4ab9aab6589402e43359" contextRef="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">214</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_f3870d2784d0498eb9d14c5b11b1b0cb" contextRef="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,935</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_a6ff7b50ed0d4afbb6b22237abcb0501" contextRef="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,345</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_1a86ea321c394ae8b34390c41bd5d0a9" contextRef="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">149</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ebfbe484980341228fab715a10ff5e59" contextRef="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,494</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div>
              <div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Total net sales</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_f1cf44a84ac1412e98445d9bbb145314" contextRef="c20230401to20230630_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,725</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_09b7b7a0623040889280cedd99af1af5" contextRef="c20230401to20230630_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,181</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_d7a07dc5a53d43a5a55e6a0feead10be" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,906</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_01c73684b13b47a3adc3491c30a10f63" contextRef="c20220401to20220630_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,727</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_c49c9a8916a442f2aa008e9c17657be5" contextRef="c20220401to20220630_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,896</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_43394192644f4e90afdaa33343c5899e" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,623</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf9" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf10"><ix:continuation id="Text_fd63516a9584469ba296e78e1a6ecde03" continuedAt="Text_fd63516a9584469ba296e78e1a6ecde04">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf10" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf11"><ix:continuation id="Text_fd63516a9584469ba296e78e1a6ecde04" continuedAt="Text_fd63516a9584469ba296e78e1a6ecde05">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="22" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="22" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Food service technology</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_835dce5e02954df487aee753e229c0ee" contextRef="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,888</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_5943c32b80074c16a2d5d98297ba8e19" contextRef="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">465</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_c71fde66293c47169fd4ec50b1690169" contextRef="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,353</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_2c5a49d45e5a471fb8c06fd9d14a2387" contextRef="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,227</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_8467c9bf0c034eacbab631ed4fb121b9" contextRef="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">335</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_cf1a94b4e12c410aa2985e396ac6b122" contextRef="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,562</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">POS automation</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ef5b85f4901b40399792cc352969834d" contextRef="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,686</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_00c3973a55084a23beaa6115b176bedc" contextRef="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_0abe5c23cbaa4869b60014b2c687ca1a" contextRef="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,701</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_eaae63defb49426ea86badfc7cf07c6a" contextRef="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,472</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_315cc43209af4f9aa8bae27f193a8568" contextRef="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_e0ca241d6bad48ff815ff025d0a51966" contextRef="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,472</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Casino and gaming</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_e5cfe8d01244443f81fb6f36e4b7cc2f" contextRef="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,044</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_9edcf8c530f045ada3a69a5544efe584" contextRef="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,939</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_9c2ff8bbb2414854927c15588d1bc943" contextRef="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">27,983</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_823c482bae5f45d7a8e94dbfcfacc386" contextRef="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,717</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_77371762637e47fb8eb9529b0395e411" contextRef="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,570</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_1c503b5c8c31450aa831f0160c7889b5" contextRef="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">11,287</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">TransAct Services Group</div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_82a6107247814b90a2be30b33edc4be2" contextRef="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,704</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_c83dfd49413b40588190f742bfcecc88" contextRef="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">435</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_91a1304d6eec4d0fa893112d2f68d253" contextRef="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,139</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_690717e472ca407baf1ad284e37f10e4" contextRef="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,413</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_d890bad984c4425486a65e1dec0628be" contextRef="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">591</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_1ec0de331a1942f6a0c3d3ce1277fab9" contextRef="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,004</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">
            <div>
              <div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Total net sales</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_239d19ff9bae428281d6dd536c4452de" contextRef="c20230101to20230630_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,322</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_fcf1414cfe9a4564bdbeb04bd7857107" contextRef="c20230101to20230630_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,854</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_ced230e00e3b42b580ec85b0aa8f007e" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">42,176</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_934854a4bc3d4ddb8455259a8bc14bdd" contextRef="c20220101to20220630_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,829</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_6990abcf2edb4f899fae6f4db6ebaddc" contextRef="c20220101to20220630_StatementGeographicalAxis_InternationalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,496</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_8ad6e94fce0e4c8fb952a2b7c51f2259" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">22,325</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf11" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf12"><ix:continuation id="Text_fd63516a9584469ba296e78e1a6ecde05">
<div><br />
    </div>
</ix:continuation></ix:continuation>

    <div class="BRPFPageFooter" style="width: 100%;"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf12" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf13">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Contract balances</div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf13" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf14">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf14" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf15">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Contract assets consist of unbilled receivables.&#160; Pursuant to the over-time revenue recognition model, revenue may be recognized prior to the customer being invoiced.&#160;
      An unbilled receivable is recorded to reflect revenue that is recognized when such revenue exceeds the amount invoiced to the customer. Unbilled receivables are separated into current and non-current assets and included within &#8220;Accounts receivable,
      net&#8221; and &#8220;Other assets&#8221; in the Condensed Consolidated Balance Sheets.</div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf15" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf16">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf16" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf17">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Contract liabilities consist of customer pre-payments and deferred revenue.&#160; Customer prepayments are reported as &#8220;Accrued liabilities&#8221; in current liabilities in the
      Condensed Consolidated Balance Sheets and represent customer payments made in advance of performance obligations in instances where credit has not been extended and are recognized as revenue when the performance obligation is complete.&#160; Deferred
      revenue is reported separately in current liabilities and non-current liabilities and consists of our extended warranty contracts, technical support for our food service technology terminals, EPICENTRAL maintenance contracts and prepaid software
      subscriptions for our BOHA! software applications, and is recognized as revenue as (or when) we perform under the contract.&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">For the </span>six<span style="font-size: 10pt; font-family: 'Times New Roman';"> months ended </span>June 30, 2023<span style="font-size: 10pt; font-family: 'Times New Roman';">, we recognized revenue of $</span><ix:nonFraction name="tact:ContractWithCustomerRevenueRecognized" id="Fact_23de521aed8e4329afb83b151ce3e670" contextRef="c20230101to20230630" unitRef="U002" decimals="-6" scale="6" format="ixt:num-dot-decimal">1</ix:nonFraction><span style="font-size: 10pt; font-family: 'Times New Roman';"> million related to our contract liabilities at </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';">.&#160; <ix:nonNumeric name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="Text_e5537ba137a64ded869295c755d2d206" contextRef="c20230101to20230630" escape="true" continuedAt="Text_153a9d52c3014b4c99e6a7402d82e6d91"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: #000000;">Total net contract liabilities consisted of the following:</span></ix:nonNumeric></span></div>
</ix:continuation>
    <ix:continuation id="Text_153a9d52c3014b4c99e6a7402d82e6d91" continuedAt="Text_153a9d52c3014b4c99e6a7402d82e6d92"><ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf17" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf18">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_153a9d52c3014b4c99e6a7402d82e6d92"><ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf18" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf19">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Unbilled receivables, current</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" id="Fact_ed5339e90cdb4ad9aa8ed0825812b06e" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">261</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetCurrent" id="Fact_ca8eebd2cb8e4187a7592005b431d1f9" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">392</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Unbilled receivables, net of current portion</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" id="Fact_de8498dfc15e4e7ba82d43ca5066778d" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">153</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetNetNoncurrent" id="Fact_28c06d18ecd54e23be9bcf92e0a7463c" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">163</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer pre-payments</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" id="Fact_ea9f42b889b64f888bd60d40d1958d1d" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">24</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" id="Fact_c1e5ad76397b4620a393fa35f2a7c3f7" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">101</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, current</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" id="Fact_878fb83023e0449b932f3e2b12ddf9b2" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,222</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityCurrent" id="Fact_5b226a0e65d944a4a3b81019de97b074" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,329</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, net of current portion</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" id="Fact_5fbb205fe7c54ce98ce0b67a4b43bd9f" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">152</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityNoncurrent" id="Fact_968bfad3f4964dc8b64c65ebcdcae486" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">143</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total net contract liabilities</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(<ix:nonFraction name="tact:ContractWithCustomerAssetLiabilityNet" id="Fact_022e994b865246958b29066e0332d518" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">984</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="tact:ContractWithCustomerAssetLiabilityNet" id="Fact_26ea9f409d0a44de9d48fdb64a1bdc80" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,018</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
</ix:continuation></ix:continuation><ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf19" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf20">
<div>
    &#160;
    </div>
</ix:continuation>
<div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">10</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf20" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf21">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Remaining performance obligations</div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf21" continuedAt="Text_872bcedcfbae4eb99b2d0a5354557bdf22">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_872bcedcfbae4eb99b2d0a5354557bdf22">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Remaining performance obligations represent the transaction price of firm orders for which a good or service has not been delivered to our customer.&#160; As of June 30, 2023, the aggregate amount of transaction prices allocated to remaining performance obligations was $<ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" id="Fact_3d0865e7fab94c8c96dfa5cbc743077b" contextRef="c20230630" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">15.7</ix:nonFraction> million.&#160; The Company expects to recognize revenue of $<ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" id="Fact_008da0877d564710916dbf52f6388102" contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230401Member" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">15.4</ix:nonFraction>
      million of its remaining performance obligations within the next <ix:nonNumeric name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" id="Fact_4ea213ae31e24509adf848e80a4a5d2f" contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230401Member" format="ixt-sec:durwordsen">12 months</ix:nonNumeric> following June 30, 2023, $<ix:nonFraction name="us-gaap:RevenueRemainingPerformanceObligation" id="Fact_9010e8ddba1648eba0cfa6719e6f3f8d" contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20240401Member" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction> million within the next <span style="-sec-ix-hidden:Fact_46d6edcfceac48c18fff396979fa22a4">24 months</span> following June 30, 2023 and
      the <span style="-sec-ix-hidden:Fact_e8b96d7595e54f3eac451aa3fb8bf1c0">balance</span> of these remaining performance obligations recognized within the next <span style="-sec-ix-hidden:Fact_88bacb023a1046b0968f765a62b445b3">36 months</span> following June 30, 2023.</div>
</ix:continuation>
<div>
     <br /></div>

    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:InventoryDisclosureTextBlock" id="Text_dc1dc241cf9846ee9affbbdee7d14acc" contextRef="c20230101to20230630" escape="true" continuedAt="Text_65907a236fcd44ecba8c5d436a65a1f11">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">4. Inventories</div>
</ix:nonNumeric>
    <ix:continuation id="Text_65907a236fcd44ecba8c5d436a65a1f11" continuedAt="Text_65907a236fcd44ecba8c5d436a65a1f12">
<div><br />
    </div>
</ix:continuation>

    <ix:continuation id="Text_65907a236fcd44ecba8c5d436a65a1f12" continuedAt="Text_65907a236fcd44ecba8c5d436a65a1f13"><ix:nonNumeric name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="Text_95c51ea4782e4d95ac5302e787267d16" contextRef="c20230101to20230630" escape="true" continuedAt="Text_be7617269c0749f7ba406ff40a5aba551">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The components of inventories were:</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_65907a236fcd44ecba8c5d436a65a1f13" continuedAt="Text_65907a236fcd44ecba8c5d436a65a1f14"><ix:continuation id="Text_be7617269c0749f7ba406ff40a5aba551" continuedAt="Text_be7617269c0749f7ba406ff40a5aba552">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_65907a236fcd44ecba8c5d436a65a1f14"><ix:continuation id="Text_be7617269c0749f7ba406ff40a5aba552">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials and purchased component parts</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves" id="Fact_8aa8c2c87470477eaeb20a83be73beeb" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,338</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves" id="Fact_7384093a79ee421b8888409551bfe28a" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,884</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finished goods</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:InventoryFinishedGoodsNetOfReserves" id="Fact_6c8cb3993fdf4ed8b2ec6b08bd6c12db" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5,070</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryFinishedGoodsNetOfReserves" id="Fact_b5a893c9f9a84223a14358f9ce417499" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,144</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_03b5135e4fdf43208e9ca941e36ca198" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,408</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_62b0ace9b50e4855a1e862c00323b1fe" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,028</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:DebtDisclosureTextBlock" id="Text_abf55607e77a4f8492f309dc33249658" contextRef="c20230101to20230630" escape="true" continuedAt="Text_35855b097a254870bed4ecdae87bfc241">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">5. Debt</div>
</ix:nonNumeric>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc241" continuedAt="Text_35855b097a254870bed4ecdae87bfc242">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc242" continuedAt="Text_35855b097a254870bed4ecdae87bfc243">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Credit Facility</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc243" continuedAt="Text_35855b097a254870bed4ecdae87bfc244">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc244" continuedAt="Text_35855b097a254870bed4ecdae87bfc245">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On March 13, 2020, we entered into a credit facility (the &#8220;Siena Credit Facility&#8221;) with Siena Lending Group LLC (the &#8220;Lender&#8221;).&#160; The Siena Credit Facility provides for a
      revolving credit line of up to $<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_2d781cdae1904f0591f86ca2223c39d4" contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">10.0</ix:nonFraction> million and was originally scheduled to expire on March 13, 2023. Borrowings under the Siena Credit
      Facility bear a floating rate of interest equal to the greatest of (i) the prime rate plus <ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" id="Fact_2f86b97a809f414fa93a29bc12190972" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_PrimeRateMember" unitRef="U004" decimals="4" scale="-2" format="ixt:num-dot-decimal">1.75</ix:nonFraction>%, (ii) the federal funds rate plus <ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" id="Fact_a2e0dfdeab6a4021bf6a03ffbd32b731" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_FederalFundsEffectiveSwapRateMember" unitRef="U004" decimals="4" scale="-2" format="ixt:num-dot-decimal">2.25</ix:nonFraction>%, and (iii) <ix:nonFraction name="us-gaap:DebtInstrumentInterestRateStatedPercentage" id="Fact_8af65a20b4164d489e89c5d975c92490" contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U004" decimals="4" scale="-2" format="ixt:num-dot-decimal">6.50</ix:nonFraction>%. The total deferred
      financing costs related to expenses incurred to complete the Siena Credit Facility was $<ix:nonFraction name="us-gaap:DeferredFinanceCostsGross" id="Fact_ce623a5884024e45bb0209d347a7e918" contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">245</ix:nonFraction> thousand, which were reported as &#8220;Other current
      assets&#8221; in current assets and &#8220;Other assets&#8221; in non-current assets in the Condensed Consolidated Balance Sheets. We also pay a fee of <ix:nonFraction name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" id="Fact_42dcaa6a0a5541a7b25a319964dd5e3b" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U004" decimals="4" scale="-2" format="ixt:num-dot-decimal">0.50</ix:nonFraction>%
      on unused borrowings under the Siena Credit Facility. Borrowings under the Siena Credit Facility are secured by a lien on substantially all the assets of the Company.</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc245" continuedAt="Text_35855b097a254870bed4ecdae87bfc246">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc246" continuedAt="Text_35855b097a254870bed4ecdae87bfc247">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Siena Credit Facility imposes a financial covenant on the Company and borrowings are subject to a borrowing base based on (i) <ix:nonFraction name="tact:DebtInstrumentFinancialCovenantEligibleAccountsReceivable" id="Fact_ebf7a5711f914aa5b18976e76f68ccc1" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U004" decimals="2" scale="-2" format="ixt:num-dot-decimal">85</ix:nonFraction>% of eligible accounts receivable plus the lesser of (a) $<ix:nonFraction name="tact:DebtInstrumentFinancialCovenantEligibleInventory" id="Fact_701629f9fb59468d84f7f49deabe71e6" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">5.0</ix:nonFraction>
      million and (b) <ix:nonFraction name="tact:DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" id="Fact_edd24acad9bb4885beefa078d042b38b" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U004" decimals="2" scale="-2" format="ixt:num-dot-decimal">50</ix:nonFraction>% of eligible raw material and <ix:nonFraction name="tact:DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" id="Fact_0162e143b2d5452798160a9c2f75b036" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U004" decimals="2" scale="-2" format="ixt:num-dot-decimal">60</ix:nonFraction>% of finished goods inventory. The agreement governing the Siena Credit Facility restricts, among other things, our ability to incur additional indebtedness and create other liens. On July
      21, 2021, the Company entered into an amendment (&#8220;Siena Credit Facility Amendment No. 1&#8221;) to the Loan and Security Agreement governing the Siena Credit Facility. Siena Credit Facility Amendment No. 1 changed the financial covenant under the Siena
      Credit Facility from a minimum EBITDA covenant to an excess availability covenant requiring that the Company maintain excess availability of at least $<ix:nonFraction name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" id="Fact_d158061ecdf54c629e29a1a024b06447" contextRef="c20210721_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_RangeAxis_MinimumMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">750</ix:nonFraction>
      thousand under the Siena Credit Facility, tested as of the end of each calendar month, beginning with the calendar month ended July 31, 2021. From July 31, 2021 through June 30, 2023, we remained in compliance with our excess availability covenant. As of June 30, 2023, we had $<ix:nonFraction name="us-gaap:SecuredDebt" id="Fact_86733bb1889648af85acd5f381526c2e" contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">2.3</ix:nonFraction> million of outstanding borrowings under the Siena Credit Facility and $<ix:nonFraction name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" id="Fact_9ccc2e8792b84b249ecbe4a136ff45ff" contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">5.6</ix:nonFraction> million of net borrowing capacity available under the Siena Credit Facility.</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc247" continuedAt="Text_35855b097a254870bed4ecdae87bfc248">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc248" continuedAt="Text_35855b097a254870bed4ecdae87bfc249">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On July 19, 2022, the Company and the Lender entered into Amendment No. 2 (&#8220;Siena Credit Facility Amendment No. 2&#8221;) to the Loan and Security Agreement governing the
      Siena Credit Facility, as amended by Siena Credit Facility Amendment No. 1.&#160; Also on July 19, 2022, the Company and the Lender entered into an Amended and Restated Fee Letter (the &#8220;Amended Fee Letter&#8221;) in connection with the Siena Credit Facility
      Amendment No. 2. Siena Credit Facility Amendment No. 2 did not modify the aggregate amount of the revolving commitment or the interest rate applicable to the loans<span style="font-size: 10pt; font-family: 'Times New Roman';">.</span></div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc249" continuedAt="Text_35855b097a254870bed4ecdae87bfc2410">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2410" continuedAt="Text_35855b097a254870bed4ecdae87bfc2411">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The changes to the Siena Credit Facility provided for in Siena Credit Facility Amendment No. 2 include, among other things, the following:</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2411" continuedAt="Text_35855b097a254870bed4ecdae87bfc2412">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2412" continuedAt="Text_35855b097a254870bed4ecdae87bfc2413">
<div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">(i) The extension of the maturity date from March 13, 2023 to March 13, 2025; and</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2413" continuedAt="Text_35855b097a254870bed4ecdae87bfc2414">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2414" continuedAt="Text_35855b097a254870bed4ecdae87bfc2415">
<div style="text-align: justify; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">(ii) The termination of the existing blocked account control agreement and entry into a new &#8220;springing&#8221; deposit account control agreement, permitting
      the Company to direct the use of funds in its deposit account until such time as (a) the sum of excess availability under the Siena Credit Facility (as amended) and unrestricted cash is less than $<ix:nonFraction name="tact:DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" id="Fact_de9a7aed7e0647488c4b62ba79411a45" contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="-6" scale="6" format="ixt:num-dot-decimal">5</ix:nonFraction> million for <ix:nonNumeric name="tact:DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" id="Fact_2ee76b3fce844d2c9e58e0c195d95376" contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" format="ixt-sec:durday">3</ix:nonNumeric> consecutive business days or (b) an event of
      default occurs and is continuing.</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2415" continuedAt="Text_35855b097a254870bed4ecdae87bfc2416">
<div><br />
    </div>
</ix:continuation>
    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">11</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2416" continuedAt="Text_35855b097a254870bed4ecdae87bfc2417">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In addition, the Amended Fee Letter requires the Company, while it retains the ability to direct the use of funds in the deposit account, to maintain outstanding
      borrowings of at least $<ix:nonFraction name="tact:DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" id="Fact_e0cfd95f0b8f4efdbe45648198dddee7" contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">2,250,000</ix:nonFraction> in principal amount. If the Company does not have the ability to direct the use of funds in the deposit
      account, then the Amended Fee Letter requires the Company to pay interest on at least $<ix:nonFraction name="tact:DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" id="Fact_e36f5cad4d6b4ecc8ead3db63bfcf181" contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">2,250,000</ix:nonFraction> principal amount of loans, whether or not
      such amount of loans is actually outstanding.</div>
</ix:continuation>
    <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2417" continuedAt="Text_35855b097a254870bed4ecdae87bfc2418">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br />
    </div>
</ix:continuation>
    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:continuation id="Text_35855b097a254870bed4ecdae87bfc2418">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On May 1, 2023, the Company and the Lender agreed to a letter amendment to the Loan and Security Agreement governing the Siena Credit Facility.&#160; Section 7.1(m) of the
        Loan and Security Agreement governing the Siena Credit Facility required that any successor to Mr. Shuldman be reasonably acceptable to the Lender, and this amendment confirmed that Mr. Dillon is an acceptable successor to Mr. Shuldman and applied
        the same requirement to any future successor to Mr. Dillon.</div>
</ix:continuation>
    </div>


    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:EarningsPerShareTextBlock" id="Text_a11a5a36bbad4987bd79a609d91d4e3c" contextRef="c20230101to20230630" escape="true" continuedAt="Text_7d99a263c8a64b40b2352d2da7780a551">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">6. Earnings per share</div>
</ix:nonNumeric>
    <ix:continuation id="Text_7d99a263c8a64b40b2352d2da7780a551" continuedAt="Text_7d99a263c8a64b40b2352d2da7780a552">
<div><br />
    </div>
</ix:continuation>

    <ix:continuation id="Text_7d99a263c8a64b40b2352d2da7780a552" continuedAt="Text_7d99a263c8a64b40b2352d2da7780a553"><ix:nonNumeric name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="Text_13bcc76aace54a8faeb5be1315fa5016" contextRef="c20230101to20230630" escape="true" continuedAt="Text_38f2f29c40204260807f1eacd556d4601">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following table sets forth the reconciliation of basic and diluted weighted average shares outstanding:</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_7d99a263c8a64b40b2352d2da7780a553" continuedAt="Text_7d99a263c8a64b40b2352d2da7780a554"><ix:continuation id="Text_38f2f29c40204260807f1eacd556d4601" continuedAt="Text_38f2f29c40204260807f1eacd556d4602">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_7d99a263c8a64b40b2352d2da7780a554" continuedAt="Text_7d99a263c8a64b40b2352d2da7780a555"><ix:continuation id="Text_38f2f29c40204260807f1eacd556d4602">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"></td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="14" style="vertical-align: bottom;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands, except per share data)</div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_87e678ba88244c65945bd563174ecec0" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">765</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_68d8a91815a2410d893d36dc20bb2899" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,376</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_ce9b473bf22048329a4aad9a9a98cdbf" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,904</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;"></td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_d785564af5024a22aacbb801c6a5d82a" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">6,724</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Shares:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Basic:&#160; Weighted average common shares outstanding</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_a52e03dab40b4e85b0c288babb2cb7cb" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,956</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_1e82823357044b8abf044295b6049eea" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,910</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_ec2cdd972fe04220a6524d3950c4406f" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,943</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_c639949a20794731a03534390c877eff" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,898</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Add:&#160; Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_87434a3ca4a04bf9aa7f80dd541281a0" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">61</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_cc8a1479f05a48f3947f659e3eebef9e" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_29d1559f7e0f4338a93e2bbfbeb78501" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">73</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_580cd95a71df44029286cf38bec5c027" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:fixed-zero">&#8211;</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 4px;">
            <div>
              <div style="text-align: left; text-indent: -27pt; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted:&#160; Weighted average common and common equivalent shares outstanding</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_46e70e060c664ce5a9b09a3ad6d8db7d" contextRef="c20230401to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,017</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_597c5a6571e04474b5036887441dc65c" contextRef="c20220401to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,910</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_d3c26e6f13fe4bdda616a5c2d237ebac" contextRef="c20230101to20230630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,016</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_15476f178d9c4b559e43e982ccab74b6" contextRef="c20220101to20220630" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,898</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss) per common share:</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_b7a18f236aa94030bd3e3d024b726ee7" contextRef="c20230401to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.08</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_d305fd46e2ff44c19ed0b383bd39d451" contextRef="c20220401to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.24</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_3c760cd078a44efc892fbe222b687d7a" contextRef="c20230101to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.39</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;"></td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_54b2fa64305b4a80a83e61aa586b4957" contextRef="c20220101to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.68</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_03c3d4d632314e2cbe069c27e0ff288c" contextRef="c20230401to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.08</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(<ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_94adaeed19dc4e889bedb2911d6f4de7" contextRef="c20220401to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.24</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_3f9137ee591e43cfb4b1eb764f9c99c2" contextRef="c20230101to20230630" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.39</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;"></td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">$</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">(<ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_7475b41c0be04d098f7af6afca82b87e" contextRef="c20220101to20220630" unitRef="U003" decimals="2" sign="-" scale="0" format="ixt:num-dot-decimal">0.68</ix:nonFraction></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">)</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <ix:continuation id="Text_7d99a263c8a64b40b2352d2da7780a555" continuedAt="Text_7d99a263c8a64b40b2352d2da7780a556">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_7d99a263c8a64b40b2352d2da7780a556">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">The computation of diluted earnings per share excludes the effect of the potential exercise of stock
        awards, including stock options and restricted stock units, when the average market price of the common stock is lower than the exercise price of the related stock award during the period, as the inclusion of these stock awards in the computation
        of diluted earnings would be anti-dilutive.</span> For the three and six months ended June 30, 2022, there were <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_33c82696f2914c48a4786b71b0d70b98" contextRef="c20220401to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.5</ix:nonFraction> million and <ix:nonFraction name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" id="Fact_093753a8fdeb4cc2a96286e7318a13a0" contextRef="c20220101to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember" unitRef="U001" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.2</ix:nonFraction> million, respectively,
      of potentially dilutive shares consisting of stock awards that were excluded from the calculation of earnings per diluted share.&#160; Furthermore, in&#160; periods when a net loss is reported, such as the three and six months ended June 30, 2022, basic and
      diluted net loss per common share are calculated using the same method.</div>
</ix:continuation>

    <div><br />
    </div>

    <div class="BRPFPageFooter" style="width: 100%;"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:LesseeOperatingLeasesTextBlock" id="Text_b9e09ee9f84a4b47b4a233230bf89b3b" contextRef="c20230101to20230630" escape="true" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">7. Leases</div>
</ix:nonNumeric>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f1" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f2">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f2" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We account for leases in accordance with ASC Topic 842: Leases.</div>
</ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f3" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f4">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f4" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f5">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We enter into lease agreements for the use of real estate space and certain equipment under operating leases and we have no financing leases. Our leases are included in
      &#8220;Right-of-use-assets&#8221; and &#8220;Lease liabilities&#8221; in our Condensed Consolidated Balance Sheets.&#160; Our leases have various lease terms, some of which include options to extend. Lease expense is recognized on a straight-line basis over the lease term.</div>
</ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f5" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f6">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f6" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f7">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Operating lease expense for the six months ended June 30, 2023
      and 2022 was $<ix:nonFraction name="us-gaap:OperatingLeaseExpense" id="Fact_657d88f0f3b6427dbefddebe7f90f04c" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">483</ix:nonFraction>
      thousand and $<ix:nonFraction name="us-gaap:OperatingLeaseExpense" id="Fact_d9af7d448a8b451ab9bba772016bc857" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">487</ix:nonFraction> thousand, respectively, and is reported as &#8220;Cost of sales&#8221;, &#8220;Engineering, design and product development expense&#8221;,
      &#8220;Selling and marketing expense&#8221;, and &#8220;General and administrative expense&#8221; in the Condensed Consolidated Statements of Operations. Operating lease expenses include short-term lease costs, which were immaterial during the periods presented.</div>
</ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f7" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f8">
<div><br />
    </div>
</ix:continuation>
    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">12</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>


    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f8" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f9"><ix:nonNumeric name="tact:LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" id="Text_1f45e10836124f919d29e35a5000c1c3" contextRef="c20230101to20230630" escape="true" continuedAt="Text_68ac4438b594474497a59eb73241ecd91">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following information represents supplemental disclosure for the statement of cash flows related to operating leases (in thousands):</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f9" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f10"><ix:continuation id="Text_68ac4438b594474497a59eb73241ecd91" continuedAt="Text_68ac4438b594474497a59eb73241ecd92">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f10" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f11"><ix:continuation id="Text_68ac4438b594474497a59eb73241ecd92">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;" rowspan="1"></td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="6">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" rowspan="1"> </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="6">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash outflows from leases</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" id="Fact_34a8ccf44ea741cd8b5c8db642255abf" contextRef="c20230101to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">504</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeasePayments" id="Fact_e89db6337308454c91aace02b71808fc" contextRef="c20220101to20220630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">456</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f11" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f12">
<div><br />
    </div>
</ix:continuation>

    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f12" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f13"><ix:nonNumeric name="tact:LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" id="Text_eb794ce20ce74cf7b3c2d9408421fb1a" contextRef="c20230101to20230630" escape="true" continuedAt="Text_38f9ccf24a7743a3b827b784473546de1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following summarizes additional information related to our leases as of June 30, 2023 and December 31, 2022:</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f13" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f14"><ix:continuation id="Text_38f9ccf24a7743a3b827b784473546de1" continuedAt="Text_38f9ccf24a7743a3b827b784473546de2">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f14" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f15"><ix:continuation id="Text_38f9ccf24a7743a3b827b784473546de2">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Weighted average remaining lease term (in years)</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonNumeric name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Fact_6f3d4c96c6ad4f408bf380a6fefb142e" contextRef="c20230630" format="ixt-sec:duryear">2.3</ix:nonNumeric></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="Fact_a027b576b97d42b8989101ec16b95168" contextRef="c20221231" format="ixt-sec:duryear">2.7</ix:nonNumeric></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Weighted average discount rate</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" id="Fact_577831bbd3c044a0b350f3794b987471" contextRef="c20230630" unitRef="U004" decimals="3" scale="-2" format="ixt:num-dot-decimal">4.4</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">%</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" id="Fact_ba061cad311d45c884c6cda7a5615652" contextRef="c20221231" unitRef="U004" decimals="3" scale="-2" format="ixt:num-dot-decimal">4.5</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </div>
          </td>

  </tr>


</table>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f15" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f16">
<div><br />
    </div>
</ix:continuation>

    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f16" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f17"><ix:nonNumeric name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="Text_19becef6126e41c09c60350897607a13" contextRef="c20230101to20230630" escape="true" continuedAt="Text_2568098aa6ea4273975e13c71c2710941">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The maturity of the Company&#8217;s operating lease liabilities as of June 30, 2023 and December 31, 2022 were as follows (in thousands):</div>
</ix:nonNumeric></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f17" continuedAt="Text_2bbbedee779c4f45858fe1545732ca4f18"><ix:continuation id="Text_2568098aa6ea4273975e13c71c2710941" continuedAt="Text_2568098aa6ea4273975e13c71c2710942">
<div><br />
    </div>
</ix:continuation></ix:continuation>
    <ix:continuation id="Text_2bbbedee779c4f45858fe1545732ca4f18"><ix:continuation id="Text_2568098aa6ea4273975e13c71c2710942">
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"> </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">2023</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br />
              </div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" id="Fact_68fa07b0436f400bb7a4bee0fb1553cd" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">469</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br />
              </div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" id="Fact_0658b8b2ad82402c8a22aee66f10356b" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">972</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2024</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" id="Fact_b4d8e60d34c34a2c820d4928651b1baa" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,024</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" id="Fact_c745f39960e04296998d78ddd8637b7b" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,022</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2025</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" id="Fact_4b4b74753b4c41b1ba521f64a3104a78" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">712</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" id="Fact_57dca507261c480aae5985e8fc6eeb54" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">710</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2026</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" id="Fact_f39cae40759f411e95b46f496bb32cef" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">22</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" id="Fact_60e31a8e47ce4349bbac017774852313" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">20</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;">Total undiscounted lease payments</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" id="Fact_87526a89def14f7496bc7757e2356039" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,227</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" id="Fact_2802193a3c1e4a9a869d3adf251c054a" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,724</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Less imputed interest</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" id="Fact_3a56a60de91e4d4ea94bb4279be14e32" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">113</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" id="Fact_96de8e571ae1409783f7c9fe45e35fc2" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">166</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;">Total lease liabilities</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" id="Fact_4879adcde382427f9ed605bfa0205a6e" contextRef="c20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,114</ix:nonFraction></div>
            </div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:OperatingLeaseLiability" id="Fact_903074fc40594f5f8f07a2cd5fed2a90" contextRef="c20221231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,558</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

    <div><br />
    </div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:IncomeTaxDisclosureTextBlock" id="Text_30e5594b386d46d290be86b035f7ff1f" contextRef="c20230101to20230630" escape="true" continuedAt="Text_d7c1bbbd47604d7b9631c02155f9883d1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">8. Income taxes</div>
</ix:nonNumeric>
    <ix:continuation id="Text_d7c1bbbd47604d7b9631c02155f9883d1" continuedAt="Text_d7c1bbbd47604d7b9631c02155f9883d2">
<div><br />
    </div>
</ix:continuation>
    <ix:continuation id="Text_d7c1bbbd47604d7b9631c02155f9883d2" continuedAt="Text_d7c1bbbd47604d7b9631c02155f9883d3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recorde<span style="font-size: 10pt;">d income tax expense in the second
        quarter of 2023 of $<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_03f2e012c6a544f29a77b3e23708cb9a" contextRef="c20230401to20230630" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">391</ix:nonFraction>
        thousand at an effective tax rate of <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_0fbf55d40fa647a08f80b3052f344362" contextRef="c20230401to20230630" unitRef="U004" decimals="3" scale="-2" format="ixt:num-dot-decimal">33.8</ix:nonFraction>% compared to an income tax benefit in the second quarter of 2022 of $<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_0fb2ecac673640e8b5ad8b2d2b53b8f0" contextRef="c20220401to20220630" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">870</ix:nonFraction> thousand at an effective tax rate of (<ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_10a1b0e1395d42d18ec65734bd5ebd83" contextRef="c20220401to20220630" unitRef="U004" decimals="3" sign="-" scale="-2" format="ixt:num-dot-decimal">26.8</ix:nonFraction>%).&#160;














        For the six months ended June 30, 2023,
        we recorded income tax expense of $<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_1d8a23dbc13546bea86cb54669f94b58" contextRef="c20230101to20230630" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">1.0</ix:nonFraction> million at an effective tax rate of <span style="font-family: 'Times New Roman';"><ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_6c9f56ca1f7b487fb64418225484ab2c" contextRef="c20230101to20230630" unitRef="U004" decimals="3" scale="-2" format="ixt:num-dot-decimal">20.7</ix:nonFraction>%</span>, compared to an income tax benefit for the six months ended June 30, 2022 of $<ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_a55a0425d6c44e0eaf5c7c7b349f8d0e" contextRef="c20220101to20220630" unitRef="U002" decimals="-5" scale="6" sign="-" format="ixt:num-dot-decimal">2.2</ix:nonFraction> million at an effective tax rate of <span style="font-family: 'Times New Roman';">(<ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_f28e1d7695b24c57aca8fd29ace15077" contextRef="c20220101to20220630" unitRef="U004" decimals="3" sign="-" scale="-2" format="ixt:num-dot-decimal">24.9</ix:nonFraction>%)</span>.</span></div>
</ix:continuation>
    <ix:continuation id="Text_d7c1bbbd47604d7b9631c02155f9883d3" continuedAt="Text_d7c1bbbd47604d7b9631c02155f9883d4">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_d7c1bbbd47604d7b9631c02155f9883d4" continuedAt="Text_d7c1bbbd47604d7b9631c02155f9883d5">
<div><span style="font-size: 10pt;"><br />
      </span> </div>
</ix:continuation>
    <ix:continuation id="Text_d7c1bbbd47604d7b9631c02155f9883d5" continuedAt="Text_d7c1bbbd47604d7b9631c02155f9883d6">
<div><span style="font-size: 10pt;"> </span></div>
</ix:continuation>
    <ix:continuation id="Text_d7c1bbbd47604d7b9631c02155f9883d6">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are subject to U.S. federal income tax, as well as income tax in certain U.S. state and foreign jurisdictions.&#160; We have substantially concluded all U.S. federal,
      state and local income tax, and foreign tax regulatory examination matters through 2018.&#160; However, our federal tax returns for the years 2019 through 2022 remain open to examination. Various U.S. state and foreign tax jurisdiction tax years remain
      open to examination as well, but we believe that any additional assessment would be immaterial to the Condensed Consolidated Financial Statements. The Company&#160;maintains a valuation allowance against certain deferred tax assets where realization is
      not certain.</div>
</ix:continuation>
<div><span style="font-size: 10pt;"> </span>
    <span style="font-size: 10pt;"> </span></div>

    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <ix:nonNumeric name="us-gaap:SubsequentEventsTextBlock" id="Text_e129fbce56dc49a4a3b033f7079d8e84" contextRef="c20230101to20230630" escape="true" continuedAt="Text_bf3ec2a6392e4114ac53295ed5e946df1">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">9. Subsequent events</div>
</ix:nonNumeric>
    <ix:continuation id="Text_bf3ec2a6392e4114ac53295ed5e946df1" continuedAt="Text_bf3ec2a6392e4114ac53295ed5e946df2">
<div><br />
    </div>
</ix:continuation>
    <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
      <ix:continuation id="Text_bf3ec2a6392e4114ac53295ed5e946df2">
<div style="text-align: justify; margin-top: 3pt; margin-bottom: 3pt; font-family: 'Times New Roman'; font-size: 10pt;">The Company has evaluated all events or transactions that occurred up to the date the Condensed Consolidated Financial Statements
        were available to be issued.&#160; Based upon this review, the Company did not identify any subsequent events that would have required adjustment or disclosure in the Condensed Consolidated Financial Statements.</div>
</ix:continuation>
    </div>


    <div><br />
    </div>


  </div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">
  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">13</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <a id="Item2."><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top;"><span style="font-weight: bold;">Item 2.</span></td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
          <div style="font-weight: bold;">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</div>
        </td>

  </tr>


</table>
  <div style="text-align: justify;"><br />
  </div>

  <div style="text-align: justify; font-weight: bold;">Forward Looking Statements</div>

  <div style="text-align: justify; font-style: italic;">Certain statements included in this Quarterly Report on Form 10-Q for the period ended June 30, 2023
    (this &#8220;Report&#8221;), including without limitation, statements in this Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations are &#8220;forward-looking statements&#8221; within the meaning of the U.S. federal securities laws, including
    the Private Securities Litigation Reform Act of 1995. Forward-looking statements are any statements other than statements of historical fact.&#160; Forward looking statements represent current views about possible future events that are often identified by
    the use of forward-looking terminology, such as &#8220;may&#8221;, &#8220;will&#8221;, &#8220;expect&#8221;, &#8220;intend&#8221;, &#8220;estimate&#8221;, &#8220;anticipate&#8221;, &#8220;believe&#8221;, &#8220;project&#8221;, &#8220;plan&#8221; or &#8220;continue&#8221; or the negative thereof or other similar words.&#160; Forward-looking statements are subject to certain
    risks, uncertainties and assumptions.&#160; In the event that one or more of such risks or uncertainties materialize, or one or more underlying assumptions prove incorrect, actual results may differ materially from those expressed or implied by the
    forward-looking statements.</div>

  <div><br />
  </div>

  <div style="text-align: justify; font-style: italic;">Important factors and uncertainties that could cause actual results to differ materially from those expressed or implied by the forward-looking statements include, but are not limited to, the
    following: the adverse effects of current economic conditions, whether due to&#160; the COVID-19 pandemic or otherwise, on our business, operations, financial condition, results of operations and capital resources, difficulties or delays in manufacturing or
    delivery of inventory or other supply chain disruptions, inflation and the Russia/Ukraine conflict, an inability of our customers to make payments on time or at all, diversion of management attention, a possible future reduction in the value of
    goodwill or other intangible assets, inadequate manufacturing capacity or a shortfall or excess of inventory as a result of difficulty in predicting manufacturing requirements due to volatile economic conditions, price increases or decreased
    availability of component parts or raw materials, exchange rate fluctuations, volatility of, and decreases in, trading prices of our common stock and the availability of needed financing on acceptable terms or at all; our ability to successfully
    develop new products that garner customer acceptance and generate sales, both domestically and internationally, in the face of substantial competition; our reliance on an unrelated third party to develop, maintain and host certain web-based food
    service application software and develop and maintain selected components of our downloadable software applications pursuant to a non-exclusive license agreement, and the risk that interruptions in our relationship with that third party could
    materially impair our ability to provide services to our food service technology customers on a timely basis or at all and could require substantial expenditures to find or develop alternative software products; our ability to successfully transition
    our business into the food service technology market; risks associated with potential future acquisitions; general economic conditions; our dependence on contract manufacturers for the assembly of a large portion of our products in Asia; our dependence
    on significant suppliers; our ability to recruit and retain quality employees as the Company grows; our dependence on third parties for sales outside the United States; our dependence on technology licenses from third parties; marketplace acceptance of
    new products; risks associated with foreign operations; the availability of third party components at reasonable prices; price wars, supply chain disruptions or other significant pricing pressures affecting the Company&#8217;s products in the United States
    or abroad; increased product costs or reduced customer demand for our products due to changes in U.S. policy that may result in trade wars or tariffs; our ability to protect intellectual property; and other risk factors identified and discussed in Part
    I, Item 1A, Risk Factors, and Part II, Item 7, Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations, of our Annual Report on Form 10-K for the year ended December 31, 2022 (our &#8220;2022 Form 10-K&#8221;) and that may be detailed
    from time to time in the Company&#8217;s other reports filed with the Securities and Exchange Commission (the &#8220;SEC&#8221;).</div>

  <div><br />
  </div>

  <div style="text-align: justify; font-style: italic;">We caution readers not to place undue reliance on forward-looking statements, which speak only as of the date of this Report.&#160; We undertake no obligation to publicly or otherwise revise any
    forward-looking statements, whether as a result of new information, future events or other factors, except where we are expressly required to do so by applicable law.</div>

  <div><br />
  </div>

  <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">14</span></div>

    <div class="BRPFPageBreak" style="page-break-after: always;">
      <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div style="font-weight: bold;">Overview</div>

  <div style="text-align: justify;">TransAct is a global leader in developing and selling software-driven technology and printing solutions for high-growth markets including food service technology, point of sale (&#8220;POS&#8221;) automation and casino and gaming.&#160;
    Our world-class products are designed from the ground up based on market and customer requirements and are sold under the BOHA!&#8482;, AccuDate&#8482;, Epic, EPICENTRAL&#174;, and Ithaca&#174;, brand names.&#160; During 2019, we launched a new line of products for the food
    service technology market, the BOHA! branded suite of cloud-based applications and companion hardware solutions.&#160; The BOHA! software and hardware products help restaurants, convenience stores and food service operators of all sizes automate the food
    production in the back-of-house operations.&#160; Known and respected worldwide for innovative designs and real-world service reliability, our thermal printers and terminals generate top-quality labels, coupons and transaction records such as receipts,
    tickets and other documents.&#160; We sell our technology to original equipment manufacturers (&#8220;OEMs&#8221;), value-added resellers, and select distributors, as well as directly to end users.&#160; Our product distribution spans across the Americas, Europe, the Middle
    East, Africa, Asia, Australia, New Zealand, the Caribbean Islands and the South Pacific. We also offer world-class service, support, labels, spare parts, accessories and printing supplies to our growing worldwide base of products currently in use by
    our customers. Through our TransAct Services Group (&#8220;TSG&#8221;), we provide a complete range of supplies and consumables used in the printing activities of customers in the restaurant and hospitality, retail, casino and gaming, and government markets.&#160;
    Through our webstore, www.transactsupplies.com, and our direct selling team, we address the demand for these products.&#160; We operate in one reportable segment: the design, development, and marketing of software-driven technology and printing solutions
    for high growth markets, and provide related services, supplies and spare parts.</div>

  <div><br />
  </div>

  <div style="text-align: justify;">Solely for convenience, some of the trademarks, service marks, trade names and copyrights referred to in this Form 10-Q are listed without the &#169;, &#174; and &#8482; symbols, but we will assert, to the fullest extent under
    applicable law, our rights to our trademarks, service marks, trade names and copyrights.</div>

  <div><br />
  </div>

  <div>
    <div style="text-align: justify; font-weight: bold;">Recent Developments</div>

    <div style="text-align: justify;">On April 5, 2023, the Company announced that on April 4, 2023, Bart C. Shuldman had resigned as the Company&#8217;s Chief Executive Officer and as a director of the Company, effective immediately (the &#8220;Effective Time&#8221;).&#160; Mr.
      Shuldman&#8217;s resignation as director is not due to any disagreement with the Company on any matter relating to the Company&#8217;s operations, policies or practices.&#160; On April 4, 2023, the Board of Directors appointed John M. Dillon, a Board member, to serve
      as interim Chief Executive Officer of the Company, effective as of the Effective Time. In this capacity, Mr. Dillon serves as the Company&#8217;s principal executive officer.&#160; Mr. Dillon will continue to serve on the Board of Directors, but has stepped
      down from his position as Audit Committee chair and from his membership on each of the committees of the Board of Directors. On May 8, 2023, the Board of Directors removed the &#8220;interim&#8221; designation and the Company announced that Mr. Dillon will
      continue in the role of Chief Executive Officer indefinitely, subject to the terms of his employment agreement.</div>

    <div><br />
    </div>

    <div style="text-align: justify; font-weight: bold;">Impact of COVID-19 Pandemic and the Global Supply Chain Disruptions</div>

    <div style="text-align: justify; margin-right: 0.1pt; margin-left: 0.1pt;">Since early 2020 and into the first quarter of 2022, the COVID-19 pandemic caused uncertainty and disruption in the global economy and financial markets.&#160; Similar to other
      companies, TransAct has been impacted by global supply chain issues, increased shipping costs and inflationary pressures, which have increased our costs and, in some instances, slowed our ability to deliver products to our customers.&#160; During 2021, we
      experienced significantly lower sales levels.&#160; However, during 2022, we were able to increase our inventory levels and minimize the impact to our customers by successfully modifying our products that were affected by supply chain disruptions, as well
      as sourcing component parts from alternate suppliers.&#160; At the same time, after a slowdown resulting from the Omicron and other variants of COVID-19 that began to ease in the first six months of 2022, we continued to experience demand recovery during the remainder of 2022 and into 2023. Although we were able to increase inventory levels during 2022 and
      expect to continue to do so in the balance of 2023, there can be no assurance that new or continuing supply chain disruptions will not affect our products or that we will be able to make timely modifications to address any future supply chain issues
      that arise.&#160; Further, while we have offset most of our cost increases by increasing prices of our products, there can be no guarantee that we will not be impacted by the economic effects of any future cost increases that cannot be predicted, supply
      chain disruptions, inflationary pressures and potential new COVID-19 variants in the markets we serve and from which we source our supplies and parts.</div>

    <div><br />
    </div>

    <div style="text-align: justify; margin-right: 0.1pt; margin-left: 0.1pt; margin-bottom: 0.1pt;">We have taken the following actions to increase liquidity and strengthen our financial position in an effort to mitigate the negative impacts from the
      COVID-19 pandemic, supply chain disruptions and inflationary pressures:</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br />
          </td>

    <td style="width: 18pt; vertical-align: top;">&#9679;</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div>Employee Retention Credit &#8211; The Company received a refundable employee retention credit under the CARES Act in the first quarter of 2023.&#160; The Company previously recognized the employee retention credit during the fourth quarter of 2021 as
              a $1.5 million &#8220;Gain from employee retention credit&#8221; in the Consolidated Statement of Operations for the year ended December 31, 2021 and recorded a $1.5 million &#8220;Employee retention credit receivable&#8221; in the Consolidated Balance Sheets as of
              December 31, 2022 and December 31, 2021.</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; margin-bottom: 0.1pt; margin-top: 0.1pt;" class="DSPFListTable">


  <tr>

    <td style="width: 18pt;"><br />
          </td>

    <td style="width: 18pt; vertical-align: top;">&#9679;</td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">Credit Facility &#8211; On March 13, 2020, we entered into a credit facility with Siena Lending Group LLC that provides a revolving credit line of up to $10.0 million, subject to a borrowing base and on July 19,
              2022, we entered into an amendment to extend the maturity of the facility to March 13, 2025.&#160; See Note 5 of the accompanying condensed consolidated financial statements for further details regarding this facility.</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageFooter" style="width: 100%;"></div>

      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">15</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: justify;">Notwithstanding the foregoing, there is no assurance that the actions we have taken in response to the pandemic, global supply chain disruptions and inflation are sufficient or adequate, and we may be required to take
      additional preventive or responsive measures, as the ultimate extent of the effects of these risks on the Company, our financial condition, results of operations, liquidity, and cash flows are uncertain and are dependent on evolving developments
      which cannot be predicted at this time.&#160; See Part I, Item 1A, Risk Factors, of the 2022 Form 10-K for further discussion of risks related to COVID-19, global supply chain disruptions and inflation.</div>

  </div>

  <div><br /></div>

  <div>
    <div style="font-weight: bold;">Critical Accounting Judgments and Estimates</div>

    <div style="text-align: justify;">Our discussion and analysis of our financial condition and results of operations are based upon our Condensed Consolidated Financial Statements, which have been prepared by us in accordance with accounting principles
      generally accepted in the United States of America.&#160; The presentation of these financial statements requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue and expenses, and the disclosure of
      contingent assets and liabilities.&#160; Our estimates include those related to revenue recognition, accounts receivable, inventory obsolescence, goodwill and intangible assets, the valuation of deferred tax assets and liabilities, depreciable lives of
      equipment, share-based compensation and contingent liabilities.&#160; We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances.&#160; There have been no material changes in our
      critical accounting judgements and estimates from the information presented in Part II, Item 7. &#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations,&#8221; in our 2022 Form 10-K.</div>

    <div><br />
    </div>

    <div style="text-align: justify; font-weight: bold;">Results of Operations: Three months ended June 30, 2023 compared to three months ended June 30, 2022</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Net Sales:</span> Net sales, which include printer, terminal and software sales, as well as sales of replacement parts, consumables (including labels) and
      maintenance and repair services, by market for the three months ended June 30, 2023 and 2022 were as follows (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-weight: bold;">$ Change</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-weight: bold;">% Change</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Food service technology (&#8220;FST&#8221;)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>3,895</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>19.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>3,432</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>27.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>463</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>13.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%;">
            <div>
              <div>POS automation</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>1,904</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>9.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>1,172</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>9.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>732</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>62.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Casino and gaming</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>12,172</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>61.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>6,525</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>51.7</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>5,647</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>86.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>TransAct Services Group (&#8220;TSG&#8221;)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>1,935</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>9.7</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>1,494</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>11.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>441</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>29.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>19,906</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>12,623</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>7,283</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>57.7</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>International *</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,181</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>16.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>2,896</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>22.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>285</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>9.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div>
      <div><br />
      </div>

    </div>

    <div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 18pt; vertical-align: top;">*</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
              <div>International sales do not include sales of printers and terminals made to domestic distributors or other domestic customers who may, in turn, ship those printers and terminals to international destinations.</div>
            </td>

  </tr>


</table>
    </div>

    <div><br />
    </div>

    <div style="text-align: justify;">Net sales for the second quarter of 2023 increased $7.3 million, or 58%, compared to the second quarter of 2022.&#160; Printer, terminal and other hardware unit sales volume increased 68% to approximately 42,000 units, due
      primarily to a sales volume increase in the casino and gaming market of 73%, and to a lesser extent, an increase in POS Automation volume and FST hardware volume of 63% and 25%, respectively.&#160; Sales in the second quarter of 2022 were also still
      somewhat negatively impacted by COVID-19.&#160; The average selling price of our printers, terminals and other hardware increased 5% during the second quarter of 2023 compared to the second quarter of 2022 primarily due to price increases instituted
      during 2022.&#160; In addition to the sales volume increases, FST software, labels and other recurring revenue increased $0.3 million, or 14%, in the second quarter of 2023 compared to the second quarter of 2022.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">International sales for the second quarter of 2023 increased $0.3 million, or 10%, from the same period in 2022 due to increased sales across all markets.</div>

  </div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">16</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Food service technology (&#8220;FST&#8221;): </span> Our primary offering in the food service technology market is our line of BOHA! products, which can combine our latest
      generation terminal and workstation which includes one or two printers and our BOHA! labeling, timers, and media software.&#160; In addition, customers may individually purchase cloud-based software applications that connect to a separate application on a
      separate mobile device into a solution to automate back-of-house operations in restaurants, convenience stores and food service operations. The additional software offering of BOHA! consists of a variety of individually purchased
      software-as-a-service (&#8220;SaaS&#8221;)-based applications for both Android and iOS operating systems, including applications for, temperature monitoring, temperature taking and checklists and task lists. These applications are sold separately, and customers
      purchase the applications they need for their back-of-house operations. Customers may also purchase associated hardware, such as handheld devices, tablets, temperature probes and temperature sensors and gateways. The BOHA! Terminal combines&#160;an
      operating system and hardware components in a device that includes a touchscreen and one or two thermal print mechanisms that print easy-to-read food rotation labels, grab-and-go labels, and nutritional labels for prepared foods, and &#8220;enjoy by&#8221; date
      labels. The BOHA! WorkStation uses an iPad or Android tablet instead of an integrated touchscreen. The BOHA! Terminal and the BOHA! WorkStation are equipped with the TransAct Enterprise Management System to ensure that only approved touchscreen
      functions are available on the touchscreen device and to allow over-the-air updates to the operating system. BOHA! helps food service establishments and restaurants (including fine dining, casual dining, fast casual and quick-service restaurants,
      convenience stores, hospitality establishments and contract food service providers) effectively manage food safety and grab-and-go initiatives, as well as automate and manage back-of-house operations. Recurring revenue from BOHA! is generated by
      software sales, including software subscriptions that are typically charged to customers annually on a per-application basis, as well as sales of labels, extended warranty and service contracts, and technical support services.&#160; In the food service
      technology market, we use an internal sales force to solicit sales directly from end users.</div>

    <div>
      <div><br />
      </div>

      <div style="text-align: justify;">Sales of our worldwide food service technology products for the three months ended June 30, 2023 and 2022 were as follows (in thousands, except percentages):</div>

    </div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-weight: bold;">$ Change</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Domestic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>3,625</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>93.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>3,281</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>95.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>344</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>10.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>270</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>6.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>151</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>4.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>119</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>78.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,895</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,432</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>463</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>13.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">$ Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Hardware</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>1,407</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>36.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>1,253</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>36.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>154</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>12.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>Software, labels and other recurring revenue</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>2,488</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>63.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>2,179</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>63.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>309</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>14.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,895</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,432</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>463</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>13.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">The increase in food service technology sales in the second quarter of 2023 compared to the second quarter of 2022 was driven by an increase in both sales of hardware and software.&#160; Hardware sales increased 12% in the
      second quarter of 2023 compared to the second quarter of 2022, due to increased sales of our Accudate 9700.&#160; Software sales, including sales of BOHA! software recognized on a SaaS subscription basis, labels and other recurring revenue, increased 14%
      compared to the prior year period due largely to the growth of the installed base of our BOHA! Terminals and WorkStations.&#160;</div>

  </div>

  <div><br /></div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">POS automation:</span><span style="font-weight: bold;">&#160;</span>In the POS automation market, we sell our Ithaca 9000 printer, which utilizes thermal printing
    technology.&#160; Our POS printer is used primarily by McDonald&#8217;s, and to a lesser extent, other quick-service restaurants either at the checkout counter or within self-service kiosks to print receipts for consumers or print on linerless labels.&#160; In the POS
    automation market, we primarily sell our products through a network of domestic and international distributors and resellers.&#160; We use an internal sales force to manage sales through our distributors and resellers, as well as to solicit sales directly
    from end-users.</div>

  <div style="text-align: justify;"><br />
  </div>

  <div style="text-align: justify;">Sales of our worldwide POS automation products for the three months ended June 30, 2023 and 2022 were as follows (in thousands, except percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div style="text-align: center; font-weight: bold;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div style="text-align: center; font-weight: bold;">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div style="text-align: center; font-weight: bold;">$ Change</div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">% Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
          <div>
            <div>Domestic</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>1,904</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>1,172</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>732</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>62.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
          <div>
            <div>International</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>&#8211;</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>0.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>&#8211;</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>0.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>&#8211;</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
          <div>
            <div>--</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>1,904</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>1,172</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>732</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
          <div>
            <div>62.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">The increase in POS automation sales in the second quarter of 2023 compared to the second quarter of 2022 was driven by domestic sales of our Ithaca&#174; 9000 printer, resulting from a 63% increase in sales volume and a
    price increase instituted during 2022. Sales in the second quarter of 2022 were negatively impacted by printer production limitations caused by the worldwide supply chain slowdown.</div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">17</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div>
      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Casino and gaming</span>. Revenue from the casino and gaming market includes sales of thermal ticket printers used in slot machines, video lottery terminals, and
        other gaming machines that print tickets or receipts instead of issuing coins at casinos, racetracks and other gaming venues worldwide. Revenue from this market also includes sales of thermal roll-fed printers used in the international off-premise
        gaming market in gaming machines such as Amusement with Prizes, Skills with Prizes and Fixed Odds Betting Terminals and kiosks for sports betting at non-casino gaming and sports betting establishments.&#160; Revenue from this market also includes
        royalties related to our patented casino and gaming technology. In addition, casino and gaming market revenue includes sales of the EPICENTRAL print system, our software solution (including annual software maintenance), that enables casino
        operators to create promotional coupons and marketing messages and to print them in real time at the slot machine.&#160;Sales of our worldwide casino and gaming products for the three months ended June 30, 2023 and 2022 were as follows (in thousands, except
        percentages):</div>

    </div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div style="text-align: center; font-weight: bold;">$ Change</div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Domestic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>9,475</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>77.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>3,929</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>60.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>5,546</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>141.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>2,697</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>22.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>2,596</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>39.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>101</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>3.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>12,172</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>6,525</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>5,647</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>86.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">The large increase in domestic sales of our casino and gaming products for the second quarter of 2023 compared to the second quarter of 2022 was primarily driven by a 153% increase in domestic sales of our thermal
      casino printers and price increases we instituted during 2022.&#160; Sales in the second quarter of 2022 were also still somewhat negatively impacted by COVID-19.&#160; We believe we have significantly increased our market share compared to the second quarter
      of 2022 due to our largest competitor&#8217;s inability to supply product due to supply chain issues.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">The increase in international casino and gaming sales during the second quarter of 2023 compared to the second quarter of 2022 was due to a 12% increase in sales of our thermal casino printers. The increase is
      attributable to our increased market share compared to the second quarter of 2022 due to our largest competitor&#8217;s inability to supply product due to supply chain issues.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">Though we expect both domestic and international sales of our casino printers to continue to be strong and higher in 2023 as compared to 2022, we believe it is likely that our largest competitor will be able to resume
      supplying product later in 2023 which would negatively impact our worldwide casino and gaming sales.</div>

  </div>

  <div><br /></div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">TransAct Services Group (&#8220;TSG&#8221;): </span>Revenue generated by TSG includes sales of consumable products (POS receipt paper, ribbons and other printing supplies for
    non-FST legacy products), replacement parts and accessories, maintenance and repair services, refurbished printers, and shipping and handling charges. Sales in our worldwide TSG market for the three months ended June 30, 2023 and 2022 were as follows
    (in thousands, except percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div style="text-align: center; font-weight: bold;">$ Change</div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">% Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
          <div>
            <div>Domestic</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>1,721</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>88.9</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>1,345</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>90.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>376</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>28.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
          <div>
            <div>International</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>214</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>11.1</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>149</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>10.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>65</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
          <div>
            <div>43.6</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>1,935</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>1,494</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>441</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
          <div>
            <div>29.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">The increase in both domestic and international revenue from TSG during the second quarter of 2023 as compared to the second quarter of 2022 was due largely to higher sales of legacy replacement parts for lottery
    printers and increased service revenue.&#160; Sales of replacement parts for our legacy lottery printers can vary significantly from quarter to quarter.</div>

  <div><br />
  </div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">18</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>
<div><span style="font-weight: bold; font-style: italic;">Gross Profit.</span>
   Gross profit information for for the three months ended June 30, 2023
  and 2022 is summarized below (in thousands, except percentages):
  </div>
<div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended June 30,</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center; white-space: nowrap;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2023</div>
              </div>
            </div>
          </div>
        </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; text-align: center; white-space: nowrap;">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; text-align: center;">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>10,858</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>5,434</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>99.8</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>54.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>43.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">Gross profit is measured as revenue less cost of sales, which includes primarily the cost of all raw materials and component parts, direct labor, manufacturing overhead expenses, cost of finished products purchased
    directly from our contract manufacturers, expenses associated with installations and support of our EPICENTRAL print system and BOHA! ecosystem and royalty payments to third parties, including to the third-party licensor of our food service technology
    software products.&#160; For the second quarter of 2023, gross profit increased $5.4 million, or 100%, due primarily to a 58% increase in sales in the second quarter of 2023 compared to the second quarter of 2022 as well as an improved mix of higher margin
    casino and gaming printer sales.&#160; Additionally, our gross margin increased to 55% for the second quarter of 2023 compared to 43% for the second quarter of 2022 due primarily to increased sales and market share gained in the casino and gaming industry
    (as previously discussed) as well as the effect of two rounds of price increases we instituted during 2022 to mitigate our higher product and shipping costs related to worldwide supply chain disruptions.&#160; We anticipate that gross margin will be under
    downward pressure for the remainder of 2023 due to our expectation that our largest competitor will likely resume supplying product to the casino and gaming market later in 2023.</div>

  <div><br />
  </div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Expenses - Engineering, Design and Product Development.</span> Engineering, design and product development expense information for the three months ended June 30, 2023 and 2022
    is summarized below (in thousands, except percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended June 30,</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2023</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>2,505</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>2,172</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>15.3</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>12.6</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>17.2</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">Engineering, design and product development expenses primarily include salary and payroll-related expenses for our hardware and software engineering staff, depreciation and design expenses (including prototype printer
    expenses, outside design, development and testing services, supplies and contract software development expenses including those of the third-party licensor of our food service technology software products).&#160; Engineering, design and product development
    expenses increased $333 thousand, or 15%, for the second quarter of 2023 compared to the second quarter of 2022 due to additional software staff resources and product testing primarily related to our FST products.</div>

  <div><br />
  </div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Expenses - Selling and Marketing.</span> Selling and marketing information for the three months ended June 30, 2023 and 2022 is summarized below (in thousands, except
    percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended June 30,</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2023</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>2,684</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>3,293</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>(18.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%)</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>13.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>26.1</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">Selling and marketing expenses primarily include salaries and payroll-related expenses for our sales, marketing and customer success staff, sales commissions, travel expenses, expenses associated with the lease of sales
    offices, advertising, trade show expenses, public relations, e-commerce and other promotional marketing expenses.&#160; Selling and marketing expenses decreased by $609 thousand, or 19%, in the second quarter of 2023 compared to the second quarter of 2022
    due to reduced trade show expenses and BOHA! market studies conducted in the first half of 2022.</div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">19</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Expenses - General and Administrative</span><span style="font-style: italic;">.</span> General and administrative information for the three months ended June 30, 2023 and 2022
      is summarized below (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended June 30,</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>4,445</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>2,923</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>52.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>22.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>23.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">General and administrative expenses primarily include salaries, incentive compensation, and other payroll-related expenses for our executive, accounting, human resources, business development and information technology
      staff, expenses for our corporate headquarters, professional and legal expenses, information technology expenses, board of director expenses and other expenses related to being a publicly traded company.&#160; General and administrative expenses increased
      $1.5 million, or 52%, during the second quarter of 2023 compared to the second quarter of 2022. In connection with the resignation of TransAct&#8217;s former Chief Executive Officer in April 2023, the Company incurred a severance charge of approximately
      $1.5 million in the second quarter of 2023.</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Income (Loss).</span> Operating income (loss) information for the three months ended June 30, 2023 and 2022 is summarized below (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended June 30,</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>1,224</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>(2,954</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>141.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>6.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>(23.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%)</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">Our operating income increased $4.2 million, or 141%, in the second quarter of 2023 compared to the second quarter of 2022 due to a $5.4 million increase in gross profit on 58% higher sales combined with a 1,150 basis
      point improvement in gross margin, partially offset by a 15% increase in operating expenses largely driven by the former Chief Executive Officer&#8217;s $1.5 million dollar severance charge in the second quarter of 2023.</div>

    <div style="text-align: justify;"> <br />
    </div>

    <div>
      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Interest, net.</span> We recorded net interest expense of $68 thousand for the second quarter of 2023 compared to $28 thousand for the second quarter of 2022.&#160;
        This increase in interest expense is related to the Company&#8217;s Siena Credit Facility. Following the July 2022 amendment of the Siena Credit Facility, we were required to maintain outstanding borrowings of at least $2,250,000 in principal amount
        pursuant to the terms of the July 2022 Siena Credit Facility Amendment No. 2 &#8211; see Note 5.&#160; Interest expense increased due to this required borrowing and a rising interest rate environment.</div>

      <div><br />
      </div>

      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Other, net.</span> Other, net primarily includes foreign exchange gains/ losses by our UK subsidiary.&#160; During the second quarter of 2023, our foreign exchange
        gains/losses netted such that we had no net gain/loss for the second quarter of 2023, resulting in no net other expense for the quarter, compared to a net exchange loss of $264 thousand for the second quarter of 2022. Going forward, we may continue
        to experience more foreign exchange gains or losses depending on the level of sales to European customers through our UK subsidiary and the fluctuation in exchange rates of the Euro and Pound Sterling against the U.S. Dollar.</div>

      <div><br />
      </div>

      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Income Taxes.</span> We recorded income tax expense for the second quarter of 2023 of $0.4 million at an effective tax rate of 33.8%, compared to an income tax
        benefit during the second quarter of 2022 of $0.9 million at an effective tax rate of (26.8%). The effective tax rate for the second quarter of 2023 is higher than the effective tax rate for the second quarter of 2022 due to the non-deductibility
        of a portion of certain compensation and severance related to the resignation of TransAct&#8217;s former CEO in April 2023, partially offset by the impact from the R&amp;D credit.&#160; In periods with pre-tax income, such as the second quarter of 2023, the
        R&amp;D credit has the effect of lowering the effective tax rate.&#160; In periods with pre-tax losses, such as second quarter of 2022, the R&amp;D credit has the effect of raising the effective tax rate.</div>

      <div><br />
      </div>

      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Net Income (Loss)</span><span style="font-weight: bold;">.</span> We reported net income for the second quarter of 2023 of $0.8 million, or $0.08 per diluted
        share, compared to a net loss of $2.4 million, or ($0.24) per diluted share, for the second quarter of 2022.</div>

    </div>

  </div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">20</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div style="text-align: justify; font-weight: bold;">Results of Operations:&#160; Six months ended&#160;June 30, 2023 compared to the six months ended&#160;June 30, 2022</div>

    <div><br />
    </div>

    <div>
      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Net Sales.</span> Net sales, which include printer, terminal and software sales, as well as sales of replacement parts, consumables and maintenance and repair
        services, by market for the six months ended June 30, 2023<span style="font-size: 10pt; font-family: 'Times New Roman';"> and </span>2022 were as follows (in thousands, except percentages):&#160; </div>

    </div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">$ Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>FST</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>7,353</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>17.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>5,562</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>24.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>1,791</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>32.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%;">
            <div>
              <div>POS automation</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>3,701</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>8.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>2,472</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>11.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>1,229</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
            <div>
              <div>49.7</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Casino and gaming</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>27,983</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>66.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>11,287</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>50.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>16,696</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>147.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>TSG</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>3,139</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>7.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>3,004</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>13.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>135</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>4.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>42,176</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>22,325</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>19,851</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>88.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>International *</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>7,854</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>18.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>5,496</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>24.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>2,358</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>42.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div>
      <div><br />
      </div>

    </div>

    <div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 18pt; vertical-align: top;">*</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
              <div>International sales do not include sales of printers and terminals made to domestic distributors or other domestic customers that may, in turn, ship those printers and terminals to international destinations.</div>
            </td>

  </tr>


</table>
    </div>

    <div><br />
    </div>

    <div style="text-align: justify;">Net sales for the first six months of 2023 increased $19.9 million, or 89%, from the same period in 2022. Printer, terminal and other hardware sales unit volume increased by 95% to approximately 93,000, units for the
      first six months of 2023 driven primarily by a 118% increase in units within our casino and gaming market.&#160; The average selling price of our printers, terminals and other hardware increased 14% for the first six months of 2023 compared to the first
      six months of 2022 due primarily to price increases instituted on most of our products in the latter part of 2022.&#160; FST software, labels and other recurring revenue increased $1.1 million, or 29%, in the first six months of 2023 compared to the first
      six months of 2022.&#160; Sales in the six months ended June 30, 2022 were also still somewhat negatively impacted by COVID-19.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">International sales for the first six months of 2023 increased $2.4 million, or 43%, from the same period in 2022 due primarily to a 52% increase in the international casino and gaming market.</div>

  </div>

  <div><br /></div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Food service technology. </span>Sales of our worldwide food service technology products for the six months ended June 30, 2023 and 2022 were as follows
    (in thousands, except percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">$ Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">% Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
          <div>
            <div>Domestic</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>6,888</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>93.7</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>5,227</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>94.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>1,661</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>31.8</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
          <div>
            <div>International</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>465</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>6.3</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>335</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>6.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>130</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
          <div>
            <div>38.8</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>7,353</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>5,562</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>1,791</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
          <div>
            <div>32.2</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">$ Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">% Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
          <div>
            <div>Hardware</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>2,538</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>34.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>1,816</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>32.7</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>722</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>39.8</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
          <div>
            <div>Software, labels and other recurring revenue</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>4,815</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>65.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>3,746</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>67.3</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
          <div>
            <div>1,069</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
          <div>
            <div>28.5</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>7,353</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>5,562</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>100.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
          <div>
            <div>1,791</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
          <div>
            <div>32.2</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">The increase in food service technology sales of $1.8 million, or 32%, in the first six months of 2023 compared to the first six months of 2022 was driven by increases in both sales of hardware and sales of BOHA!
    software, labels and other recurring revenue. Hardware sales increased 40% in the first half of 2023 compared to the first half of 2022 due largely to increased sales of our AccuDate 9700. FST software, labels and other recurring revenue sales
    increased 29% in the first six months of 2023 compared to the first six months of 2022.&#160; This increase was primarily due to increased label sales and, to a lesser extent, increased software sales, compared to the prior year period due principally to
    the growth of the installed base of our BOHA! terminals and workstations.</div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">21</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div>
      <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">POS automation. </span>Sales of our worldwide POS automation products for the six months ended June 30, 2023 and 2022 were as follows (in thousands, except
        percentages):</div>

    </div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">$ Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Domestic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>3,686</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>99.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>2,472</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>1,214</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>49.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>15</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>0.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>&#8211;</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>0.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>15</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,701</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>2,472</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>1,229</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>49.7</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">Sales of POS automation printers increased $1.2 million, or 50%, for the first six months of 2023 compared to the first six months of 2022 due to an increase of domestic sales of our Ithaca&#174; 9000 printer combined with
      a price increase instituted during 2022.&#160; In addition, sales in the second quarter of 2022 were negatively impacted by printer production limitations caused by the worldwide supply chain slowdown.</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Casino and gaming. </span>Sales of our worldwide casino and gaming products for the six months ended June 30, 2023 and 2022 were as follows (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">$ Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Domestic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>21,044</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>75.2</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>6,717</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>59.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>14,327</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>213.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>6,939</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>24.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>4,570</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>40.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>2,369</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>51.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>27,983</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>11,287</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>16,696</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>147.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">The increase in domestic sales of our casino and gaming products of $14.3 million, or 213%, for the first six months of 2023 compared to the first six months of 2022 was due to an increase in sales and price increases
      in our gaming and thermal casino printers. We believe we have significantly increased our market share compared to the second quarter of 2022 due to our largest competitor&#8217;s inability to supply product due to supply chain issues.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">International sales of our casino and gaming products increased by $2.4 million, or 52%, in the first six months of 2023 compared to the first six months of 2022.&#160; The increase is attributable to our increased market
      share compared to the second quarter of 2022 due to our largest competitor&#8217;s inability to supply product due to supply chain issues, as well as price increases instituted during 2022.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">Though we expect both domestic and international sales of our casino printers to continue to be strong in 2023 as compared to 2022, we believe it is likely that our largest competitor will be able to resume supplying
      product later in 2023 which would negatively impact our worldwide casino and gaming sales.</div>

  </div>

  <div><br /></div>

  <div>
    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">TSG. </span>Sales in our worldwide TSG market for the six months ended June 30, 2023 and 2022 were as follows (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">
            <div style="text-align: center; font-weight: bold;">
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2022</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">$ Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">% Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;">
            <div>
              <div>Domestic</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>2,704</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>86.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>2,413</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>80.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>291</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>12.1</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 2px;">
            <div>
              <div>International</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>435</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>13.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>591</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>19.7</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
            <div>
              <div>(156</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px;">
            <div>
              <div>(26.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
            <div>
              <div>%)</div>
            </div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,139</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>3,004</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>100.0</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;">
            <div>
              <div>135</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF;">
            <div>
              <div>4.5</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">The increase in domestic TSG revenue of $0.3 million, or 12%, for the first six months of 2023 as compared to the first six months of 2022 was primarily due to greater sales of replacement parts and accessories as well
      as increased service revenue.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">Internationally, TSG revenue decreased $0.2 million, or 26%, for the first six months of 2023 compared to the first six months of 2022, primarily due to a 59% decrease in sales of replacement parts to international
      casino and gaming customers.</div>

    <div><br />
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageFooter" style="width: 100%;"></div>

      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">22</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Gross Profit.</span>&#160; Gross profit for the six months ended June 30, 2023 and 2022 is summarized below (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>23,113</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>8,000</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>188.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>54.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>35.8</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">For the first six months of 2023, gross profit increased $15.1 million, or 189%, due largely to a sales increase of 89% in the first six months of 2023 compared to the first six months of 2022. Gross margin also
      increased 1,900 basis points to 55% in the first half of 2023 compared to 36% in the second half of 2022.&#160;&#160; The large increase in both gross profit and gross margin is due to increased market share in the casino and gaming market, increased sales of
      higher margin products and price increases instituted in 2022.&#160; However, we anticipate that gross margin will be under downward pressure for the remainder of 2023 due to our expectation that our largest competitor will likely resume supplying product
      to the casino and gaming market later in 2023.</div>

  </div>

  <div><br /></div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Expenses - Engineering, Design and Product Development.</span>&#160; Engineering, design and product development expense for the six months ended June 30, 2023 and 2022 is summarized
    below (in thousands, except percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended June 30,</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-weight: bold;">
                      <div>
                        <div style="text-align: center; font-weight: bold;">
                          <div>
                            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>4,774</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>4,455</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>7.2</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>11.3</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>20.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">Engineering, design and product development expenses increased $0.3 million, or 7%, during the first six months of 2023 compared to first six months of 2022 due to the impact from the hiring of additional engineering
    staff as well as product testing.</div>

  <div><br />
  </div>

  <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Expenses - Selling and Marketing.</span> Selling and marketing expense for the six months ended June 30, 2023 and 2022 is summarized below (in thousands, except
    percentages):</div>

  <div><br />
  </div>

  <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended June 30,</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
          <div>
            <div style="text-align: center; font-weight: bold;">Percent of</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">Change</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
          <div>
            <div style="text-align: center; font-weight: bold;">
              <div>
                <div style="text-align: center; font-weight: bold;">
                  <div>
                    <div style="text-align: center; font-weight: bold;">
                      <div>
                        <div style="text-align: center; font-weight: bold;">
                          <div>
                            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>5,441</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
          <div>
            <div>$</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>5,976</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>(9.0</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%)</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>12.9</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
          <div>
            <div>26.8</div>
          </div>
        </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
          <div>
            <div>%</div>
          </div>
        </td>

  </tr>


</table>
  <div><br />
  </div>

  <div style="text-align: justify;">Selling and marketing expenses decreased $0.5 million, or 9%, for the first six months of 2023 compared to the first six months of 2022. The primary driver of the decline relates to BOHA! market studies conducted in the
    first half of 2022 which were not repeated in 2023.&#160; In addition to the reduction of these initiatives, we incurred lower trade show expenses in the first six months of 2023.</div>

  <div><br /></div>

  <div>
    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Expenses - General and Administrative</span><span style="font-style: italic;">.</span> General and administrative expense for the six months ended June 30, 2023 and 2022
      is summarized below (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended June 30,</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-weight: bold;">
                            <div>
                              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
                                <div>
                                  <div style="text-align: center; font-weight: bold;">
                                    <div>
                                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
                                    </div>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-weight: bold;">
                            <div>
                              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>7,861</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>6,127</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>28.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>18.6</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>27.4</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">General and administrative expenses increased $1.7 million, or 28%, for the first six months of 2023 compared to the first six months of 2022. Driving the increase was the severance charge related to the resignation of
      the Company&#8217;s former Chief Executive Officer in April 2023 of approximately $1.5 million.&#160; Other factors contributing to the increase were higher compensation expense and higher depreciation expense related to the implementation of a new ERP system
      in 2022.</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Operating Income (Loss).</span> Operating income (loss) for the six months ended June 30, 2023 and 2022 is summarized below (in thousands, except percentages):</div>

    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended June 30,</div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">
            <div>
              <div style="text-align: center; font-weight: bold;">Percent of</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">Change</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">Total Sales &#8211; 2023</div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
            <div>
              <div style="text-align: center; font-weight: bold;">
                <div>
                  <div style="text-align: center; font-weight: bold;">
                    <div>
                      <div style="text-align: center; font-weight: bold;">
                        <div>
                          <div style="text-align: center; font-weight: bold;">
                            <div>
                              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total Sales &#8211; 2022</div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>5,037</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
            <div>
              <div>$</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>(8,558</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>)</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>158.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>11.9</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
            <div>
              <div>(38.3</div>
            </div>
          </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
            <div>
              <div>%)</div>
            </div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify;">Our operating income increased $13.6 million, or 159%, for the first six months of 2023 compared to the first six months of 2022 as a $15.1 million, or 189% increase in gross profit on 89% higher sales was partially
      offset by a $1.5 million, or 9%, increase in operating expenses during the first half of 2023 compared to the first half of 2022.</div>

    <div><br />
    </div>

    <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
      <div class="BRPFPageFooter" style="width: 100%;"></div>

      <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">23</span></div>

      <div class="BRPFPageBreak" style="page-break-after: always;">
        <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

      <div class="BRPFPageHeader" style="width: 100%;">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Interest, net.</span> We recorded net interest expense of $134 thousand for the first six months of 2023 compared to net interest expense of $92 thousand for the
      first six months of 2022.&#160; This increase in interest expense is related to the Company&#8217;s Siena Credit Facility. Following the July 2022 amendment of the Siena Credit Facility, we were required to maintain outstanding borrowings of at least $2,250,000
      in principal amount pursuant to the terms of the July 2022 Siena Credit Facility Amendment No. 2 &#8211; see Note 5. Interest expense increased due to this required borrowing and a rising interest rate environment.</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Other, net.</span> We recorded other income of $21 thousand for the first six months of 2023 compared to other expense of $299 thousand for the first six months of
      2022.&#160; The large decline in other expense is due to foreign exchange losses recorded by our U.K. subsidiary in the second quarter of 2022 largely due to a weakening of the British pound sterling against the U.S. dollar.</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Income Taxes.</span>&#160;We recorded income tax expense for the first six months of 2023 of $1.0 million at an effective tax rate of 20.7%, compared to an income tax
      benefit for the first six months of 2022 of $2.2 million at an effective tax rate of (24.9%).</div>

    <div><br />
    </div>

    <div style="text-align: justify;"><span style="font-weight: bold; font-style: italic;">Net Income (loss)</span><span style="font-weight: bold;">.</span> As a result of the above, we reported net income for the first six months of 2023 of $3.9 million,
      or $0.39 per diluted share, compared to a net loss of $6.7 million, or ($0.68) per diluted share for the first six months of 2022.</div>

  </div>

  <div><br /></div>

  <div style="font-weight: bold;"><span style="text-decoration: underline;">Liquidity and Capital Resources</span></div>

  <div><br />
  </div>

  <div style="text-align: justify; font-weight: bold;">Cash Flow</div>

  <div style="text-align: justify;">For the first six months of 2023, our cash and cash equivalents balance increased $2.8 million from December 31, 2022. We ended the second quarter of 2023 with $10.8 million in cash and cash equivalents, of which $0.6
    million was held by our U.K. subsidiary.</div>

  <div><br />
  </div>

  <div style="text-align: justify;"><span style="font-style: italic;">Operating activities</span>:&#160; The following significant factors affected our cash provided by operating activities of $3.7 million for the first six months of 2023 as compared to cash
    used in operating activities of $14.6 million for the first six months of 2022:</div>

  <div><br />
  </div>

  <div style="text-align: justify;">During the first six months of 2023:</div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">We reported net income of $3.9 million.</div>
          </td>

  </tr>


</table>
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">We recorded depreciation and amortization of $0.7 million, and share-based compensation expense of $0.4 million.</div>
          </td>

  </tr>


</table>
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">Deferred income taxes were down $0.8 million due to pre-tax income being recognized in the first six months of 2023.</div>
          </td>

  </tr>


</table>
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">Employee retention credit receivable decreased $1.5 million due to the collection of this receivable in the first quarter of 2023.</div>
          </td>

  </tr>


</table>
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">Inventories increased $3.4 million consistent with overall increases in sales in 2023 compared to 2022.</div>
          </td>

  </tr>


</table>
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">Accounts payable were down $1.1 million in 2023 due largely to the timing of vendor payments.</div>
          </td>

  </tr>


</table>
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">Accrued liabilities and other liabilities increased $1.3 million due largely to accrued severance in connection with the resignation of TransAct&#8217;s former Chief Executive Officer in April 2023.</div>
          </td>

  </tr>


</table>
  </div>

  <div><br />
  </div>

  <div style="text-align: justify;">During the first six months of 2022:</div>

  <div style="text-align: justify;">
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">
              <div>We reported a net loss of $6.7 million.</div>
            </div>
          </td>

  </tr>


</table>
    <div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
              <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
            </td>

    <td style="width: auto; vertical-align: top;">
              <div style="text-align: justify;">
                <div style="text-align: left;">We recorded depreciation and amortization of $0.6 million and share-based compensation expense of $0.6 million.</div>
              </div>
            </td>

  </tr>


</table>
    </div>

  </div>

  <div style="text-align: justify;">
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">
              <div style="text-align: left;">Accounts receivable increased $4.5 million due to higher sales volumes in the first half of 2022.</div>
            </div>
          </td>

  </tr>


</table>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">
              <div style="text-align: left;">Deferred income taxes increased $2.2 million due to a pretax loss during the first half of 2022.<br />
              </div>
            </div>
          </td>

  </tr>


</table>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
            <div style="text-align: left; margin-left: 18pt;">&#8226;</div>
          </td>

    <td style="width: auto; vertical-align: top;">
            <div style="text-align: justify;">
              <div>Inventories increased $3.3 million due largely to strategic purchases of electronic parts in volume in an effort to minimize disruptions of production at our contract manufacturers.</div>
            </div>
          </td>

  </tr>


</table>
  </div>

  <div style="text-align: justify; text-indent: -18pt; margin-left: 36pt;"><br />
  </div>

  <div style="text-align: justify;"><span style="font-style: italic;">Investing activities:</span>&#160; Our capital expenditures were $689 thousand for the first six months of 2023 compared to $744 thousand for the first six months of 2022.&#160; Expenditures in
    2023 were for computer and networking equipment and new tooling equipment.&#160; Expenditures in 2022 were primarily related to the implementation of a new ERP system.</div>

  <div><br />
  </div>

  <div style="text-align: justify;"><span style="font-style: italic;">Financing activities:</span>&#160; Financing activities used $86 thousand and $129 thousand of cash during the first six months of 2023 and 2022, respectively, primarily to pay for
    withholding taxes on stock issued from our stock compensation plans.</div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">24</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div style="text-align: justify; font-style: italic; font-weight: bold;">Resource Sufficiency</div>

    <div style="text-align: justify;">Since early 2020, we have been impacted in varying degrees by the COVID-19 pandemic.&#160; In addition, and more recently, we have been impacted by global supply chain issues, increased shipping costs, increased interest
      rates and inflationary pressures.&#160; Although these economic conditions have abated somewhat of late, they continue to cause uncertainty and disruption in the global economy and financial markets.&#160; Given the unprecedented impact and severity of these
      external factors on the food service and casino and gaming industries, the Company continues to monitor its cash generation, usage and preservation including the management of working capital to generate cash.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">We believe that our cash and cash equivalents on hand, our expected cash flows generated from operating activities, and borrowings available under the Siena Credit Facility will provide sufficient resources to meet our
      working capital needs, finance our capital expenditures and meet our liquidity requirements through at least the next twelve months.&#160; Notwithstanding this belief, the duration and extent of these global economic pressures remain uncertain and the
      ultimate impact of these global pressures is unknown.&#160;</div>

    <div><br />
    </div>

    <div style="font-style: italic; font-weight: bold;">Credit Facility and Borrowings</div>

    <div style="text-align: justify;">On March 13, 2020, we entered into the Loan and Security Agreement governing the Siena Credit Facility with Siena Lending Group LLC (the &#8220;Lender&#8221;).&#160; The Siena Credit Facility provides for a revolving credit line of up
      to $10.0 million and was originally scheduled to expire on March 13, 2023.&#160; Borrowings under the Siena Credit Facility bear a floating rate of interest equal to the greatest of (i) the prime rate plus 1.75%, (ii) the federal funds rate plus 2.25%,
      and (iii) 6.50%. The total deferred financing costs related to expenses incurred to complete the Siena Credit Facility were $245 thousand. We also pay a fee of 0.50% on unused borrowings under the Siena Credit Facility. Borrowings under the Siena
      Credit Facility are secured by a lien on substantially all the assets of the Company. Borrowings under the Siena Credit Facility are subject to a borrowing base based on (i) 85% of eligible accounts receivable plus the lesser of (a) $5.0 million and
      (b) 50% of eligible raw material and 60% of finished goods inventory.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">The Siena Credit Facility imposes a financial covenant on the Company and restricts, among other things, our ability to incur additional indebtedness and the creation of other liens. On July 21, 2021, the Company
      entered into an amendment (&#8220;Siena Credit Facility Amendment No. 1&#8221;) to the Siena Credit Facility. Siena Credit Facility Amendment No. 1 changed the financial covenant under the Siena Credit Facility from a minimum EBITDA covenant to an excess
      availability covenant requiring that the Company maintain excess availability of at least $750 thousand under the Siena Credit Facility, tested as of the end of each calendar month, beginning with the calendar month ended July 31, 2021.&#160; From July
      31, 2021 through June 30, 2023, we remained in compliance with our excess availability covenant.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">On July 19, 2022, the Company and the Lender entered into Amendment No. 2 (&#8220;Siena Credit Facility Amendment No. 2&#8221;) to the Siena Credit Facility as amended by Siena Credit Facility Amendment No. 1.&#160; Also on July 19,
      2022, the Company and the Lender entered into an Amended and Restated Fee Letter (the &#8220;Amended Fee Letter&#8221;) in connection with Siena Credit Facility Amendment No. 2. Siena Credit Facility Amendment No. 2 did not modify the aggregate amount of the
      revolving commitment or the interest rate applicable to the loans.</div>

  </div>

  <div><br /></div>

  <div>
    <div style="text-align: justify;">The changes to Siena Credit Facility provided for in Siena Credit Facility Amendment No. 2 included, among other things, the following:</div>

    <div><br />
    </div>

    <div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; margin-bottom: 8pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
              <div style="text-align: left; margin-left: 18pt; margin-bottom: 8pt;">(i)</div>
            </td>

    <td style="width: auto; vertical-align: top;">
              <div style="text-align: justify; margin-bottom: 8pt;">The extension of the maturity date from March 13, 2023 to March 13, 2025; and</div>
            </td>

  </tr>


</table>
    </div>

    <div>
      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; margin-bottom: 8pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top; text-align: right;">
              <div style="text-align: left; margin-left: 18pt; margin-bottom: 8pt;">(ii)</div>
            </td>

    <td style="width: auto; vertical-align: top;">
              <div style="text-align: justify; margin-bottom: 8pt;">The termination of the existing blocked account control agreement and entry into a new &#8220;springing&#8221; deposit account control agreement, permitting the Company to direct the use of funds in
                its deposit account until such time as (a) the sum of excess availability under the Siena Credit Facility and unrestricted cash is less than $5 million for 3 consecutive business days or (b) an event of default occurs and is continuing.</div>
            </td>

  </tr>


</table>
    </div>

    <div style="text-align: justify;">In addition, the Amended Fee Letter requires the Company, while it retains the ability to direct the use of funds in the deposit account, to maintain outstanding borrowings of at least $2,250,000 in principal amount.
      If the Company does not have the ability to direct the use of funds in the deposit account, then the Amended Fee Letter requires the Company to pay interest on at least $2,250,000 principal amount of loans, whether or not such amount of loans is
      actually outstanding.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">On May 1, 2023, the Company and the Lender agreed to a letter amendment to the Loan and Security Agreement governing the Siena Credit Facility.&#160; Section 7.1(m) of the Loan and Security Agreement governing the Siena
      Credit Facility required that any successor to Mr. Shuldman be reasonably acceptable to the Lender, and this amendment confirmed that Mr. Dillon is an acceptable successor to Mr. Shuldman and applied the same requirement to any future successor to
      Mr. Dillon.</div>

    <div><br />
    </div>

    <div style="text-align: justify;">As of June 30, 2023, we had $2.3 million of outstanding borrowings under the Siena Credit Facility and $5.6 million of net borrowing capacity available under the Siena Credit Facility.</div>

  </div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">25</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <a id="Item3."><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top;"><span style="font-weight: bold;">Item 3.</span></td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div>TransAct is a smaller reporting company, as defined in Item 10(f)(1) of Regulation S-K, and is not required to provide information under this item.</div>

    <div style="text-indent: -54pt; margin-left: 54pt;"><br />
    </div>

    <a id="Item4."><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 4.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">CONTROLS AND PROCEDURES</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

    <div style="text-align: justify; font-style: italic; font-weight: bold;">Evaluation of Disclosure Controls and Procedures</div>

    <div style="text-align: justify;">Our management, with the participation of our Chief Executive Officer and Chief Financial Officer (our principal executive officer and principal financial officer, respectively), evaluated the effectiveness of our
      disclosure controls and procedures as of June 30, 2023.&#160;&#160;The term &#8220;disclosure controls and procedures,&#8221; as defined in Rules 13a-15(e) and 15d-15(e) of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;), means controls and other
      procedures of a company that are designed to ensure that information required to be disclosed by a company in the reports that it files or submits under the Exchange Act is recorded, processed, summarized and reported within the time periods
      specified in the Securities and Exchange Commission&#8217;s rules and forms.&#160;&#160;Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by a company in the reports
      that it files or submits under the Exchange Act is accumulated and communicated to the company's management, including its principal executive and principal financial officers, as appropriate to allow timely decisions regarding required
      disclosure.&#160;&#160;Management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving their objectives, and management necessarily applies its judgment in evaluating the
      cost-benefit relationship of possible controls and procedures.&#160;&#160;Based on the evaluation of our disclosure controls and procedures as of June 30, 2023,
      our Chief Executive Officer and Chief Financial Officer concluded that, as of such date, our disclosure controls and procedures were effective at the reasonable assurance level.</div>

    <div><br />
    </div>

    <div style="text-align: justify; font-style: italic; font-weight: bold;">Changes in Internal Control Over Financial Reporting</div>

    <div style="text-align: justify; margin-top: 3pt; margin-bottom: 3pt;">No change in our internal control over financial reporting (as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) occurred during the fiscal quarter ended June 30, 2023 that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.</div>

  </div>

  <div><br /></div>

  <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
    <div class="BRPFPageFooter" style="width: 100%;"></div>

    <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">26</span></div>

    <div style="page-break-after: always;" class="BRPFPageBreak">
      <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

    <div class="BRPFPageHeader" style="width: 100%;">
      <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
      </div>

    </div>

  </div>

  <div>
    <div style="font-weight: bold;">PART II.&#160; OTHER INFORMATION</div>

    <div><br />
    </div>

    <a id="LEGAL"></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 1.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">LEGAL PROCEEDINGS</div>
          </td>

  </tr>


</table>
    <div style="text-align: justify;">The Company may, in the ordinary course of business, become a party to litigation involving collection matters, contract claims and other legal proceedings relating to the conduct of its business.&#160; As of June 30, 2023, we are unaware of any material pending legal proceedings, or of any material legal proceedings contemplated by government authorities.</div>

    <div><br />
    </div>

    <a id="RISKFACTORS"></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 1A.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">RISK FACTORS</div>
          </td>

  </tr>


</table>
    <div style="text-align: justify;">Information regarding risk factors appears under Part I, Item&#160;1A, &#8220;Risk Factors,&#8221; of our 2022
      Form&#160;10-K.&#160;&#160;There have been no material changes from the risk factors previously disclosed in our 2022 Form&#160;10-K. The risks factors
      described in our 2022 Form 10-K are not the only risks facing our Company.&#160;&#160;Additional risks and uncertainties, not currently known to
      us or that we currently deem to be immaterial, also may materially adversely affect our business, financial condition or future results.</div>

    <div><br />
    </div>

    <a id="UNREGISTEREDSALES"></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 2.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</div>
          </td>

  </tr>


</table>
    <div>None.</div>

    <div><br />
    </div>

    <a id="DEFAULTS"></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 3.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">DEFAULTS UPON SENIOR SECURITIES</div>
          </td>

  </tr>


</table>
    <div>None.</div>

    <div><br />
    </div>

    <a id="MINESAFETY"></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 4.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">MINE SAFETY DISCLOSURES</div>
          </td>

  </tr>


</table>
    <div>Not applicable.</div>

    <div><br />
    </div>

    <a id="OTHERINFORMATION"></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top; font-weight: bold;">Item 5.</td>

    <td style="width: auto; vertical-align: top;">
            <div style="font-weight: bold;">OTHER INFORMATION</div>
          </td>

  </tr>


</table>
    <div>None.</div>

  </div>

  <div><br /></div>

  <a id="EXHIBITS"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 54pt; vertical-align: top;"><!--Anchor--><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">Item 6.</span></td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
          <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">EXHIBITS</div>
        </td>

  </tr>


</table>
  <div>
    <div><br />
    </div>

    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;"><a href="https://www.sec.gov/Archives/edgar/data/1017303/000114036122030288/exhibit3-2.htm">3.1</a></div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Certificate of Incorporation of TransAct Technologies Incorporated (conformed copy) (incorporated by reference to Exhibit 3.2 of the Company&#8217;s Quarterly Report on Form 10-Q (SEC File No. 000-21121) filed with
              the SEC on August 18, 2022).</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;"><a href="https://www.sec.gov/Archives/edgar/data/1017303/000114036123014061/ex3_2.htm">3.2</a></div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Amended and Restated By-laws of TransAct Technologies Incorporated (incorporated by reference to Exhibit 3.2 of the Company&#8217;s Annual Report on Form 10-K (SEC File No. 000-21121) filed with the SEC on March 28,
              2023).</div>
          </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;"><a href="https://www.sec.gov/Archives/edgar/data/1017303/000121465923005753/tat412231proxy.htm#T99046">10.1</a></div>
          </td>

    <td rowspan="1" style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89.17%; vertical-align: top; text-align: justify; background-color: rgb(204, 238, 255);">TransAct Technologies Incorporated 2014 Equity Incentive Plan, as amended and restated in 2023 (incorporated by reference to
            Exhibit I to the Company&#8217;s Definitive Proxy Statement on Schedule 14A (000-21121) filed with the SEC on April 21, 2023).</td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;"><a href="https://www.sec.gov/Archives/edgar/data/1017303/000121465923006005/ex10_1.htm">10.2</a></div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Separation Agreement and General Release, dated April 20, 2023, between the Company and Bart C. Shuldman (incorporated by reference to Exhibit 10.1 of Amendment No. 1 to the Company&#8217;s Current Report on Form 8-K
              (SEC File No. 000-21121) filed with the SEC on April 26, 2023)<a href="https://www.sec.gov/Archives/edgar/data/0001017303/000121465922004610/ex10_1.htm">.</a></div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;"><a href="https://www.sec.gov/Archives/edgar/data/1017303/000121465923006005/ex10_2.htm">10.3</a></div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Letter Agreement, dated April 24, 2023, between the Company and John M. Dillon (incorporated by reference to Exhibit 10.2 of Amendment No. 1 to the Company&#8217;s Current Report on Form 8-K (SEC File No. 000-21121)
              filed with the SEC on April 26, 2023).</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;"><a href="https://www.sec.gov/Archives/edgar/data/1017303/000121465923006506/ex10_1.htm">10.4</a></div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Letter Amendment, dated May 1, 2023, to Loan and Security Agreement between Siena Lending Group LLC and TransAct Technologies Incorporated (incorporated by reference to Exhibit 10.1 to the Company&#8217;s Current
              Report on Form 8-K (SEC File No. 000-21121) filed with the SEC on May 4, 2023).</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;"><a href="exhibit31-1.htm">31.1</a> *</div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Certification of Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;"><a href="exhibit31-2.htm">31.2</a> *</div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Certification of Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;"><a href="exhibit32-1.htm">32.1</a> **</div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Certification pursuant to 18 U.S.C. Section 1350 as adopted pursuant to section 906 of the Sarbanes-Oxley Act of 2002.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;">101.INS</div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Inline XBRL Instance Document (the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document).</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">101.SCH</div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Inline XBRL Taxonomy Extension Schema Document.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;">101.CAL</div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Inline XBRL Taxonomy Extension Calculation Linkbase Document.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">101.DEF</div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Inline XBRL Taxonomy Extension Definition Linkbase Document.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;">101.LAB</div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Inline XBRL Taxonomy Extension Label Linkbase Document.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">101.PRE</div>
          </td>

    <td style="width: 1.67%; vertical-align: top; background-color: rgb(204, 238, 255);">&#160;</td>

    <td style="width: 89.17%; vertical-align: top; background-color: rgb(204, 238, 255);">
            <div style="text-align: justify;">Inline XBRL Taxonomy Extension Presentation Linkbase Document.</div>
          </td>

  </tr>

  <tr>

    <td style="width: 9.17%; vertical-align: top;">
            <div style="text-align: justify;">104</div>
          </td>

    <td style="width: 1.67%; vertical-align: top;">&#160;</td>

    <td style="width: 89.17%; vertical-align: top;">
            <div style="text-align: justify;">Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101).</div>
          </td>

  </tr>


</table>
  </div>

  <div><br />
  </div>

  <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
    <hr style="height: 2px; width: 15%; color: #000000; background-color: #000000; text-align: left; border: none; margin-left: 0px; margin-right: auto;" /></div>

  <div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 18pt; vertical-align: top;">*</td>

    <td style="width: auto; vertical-align: top;">
            <div>Filed herewith.</div>
          </td>

  </tr>


</table>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 18pt; vertical-align: top;">**</td>

    <td style="width: auto; vertical-align: top;">
            <div>Furnished herewith.</div>
          </td>

  </tr>


</table>
    <div><br />
    </div>

  </div>

  <div class="BRPFPageFooter" style="width: 100%;"></div>

</div>
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; ">

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman', Times, serif; font-size: 8pt; font-weight: normal; font-style: normal;">27</span></div>

      <div style="page-break-after: always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;" /></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#INDEX"><span style="font-weight: bold; color: rgb(0, 0, 0); font-family: 'Times New Roman',Times,serif; font-size: 8pt; font-style: italic; font-variant: normal; text-transform: none;">Index</span></a><br />
        </div>

      </div>

    </div>

    <div style="text-align: left;">
      <div style="text-align: center; font-weight: bold;"><a id="SIGNATURES"><!--Anchor--></a><span style="text-decoration: underline;">SIGNATURES</span></div>

      <div><br />
      </div>

      <div style="text-align: justify;">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</div>

      <div><br />
      </div>

      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">


  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">
              <div style="font-weight: bold;">TRANSACT TECHNOLOGIES INCORPORATED</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">(Registrant)</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top; border-bottom: #000000 2px solid;">
              <div style="text-align: justify;">By: /s/ Steven A. DeMartino</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">Dated: August 10, 2023</div>
            </td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">&#160;&#160;&#160;&#160;&#160;Steven A. DeMartino</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">&#160;&#160;&#160;&#160;&#160;President, Chief Financial Officer, Treasurer and Secretary</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">&#160;&#160;&#160;&#160;&#160;(Principal Financial Officer)</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top; border-bottom: #000000 2px solid;">
              <div style="text-align: justify;">By: /s/ William J. DeFrances</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">
              <div>Dated: August 10, 2023</div>
            </td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">&#160;&#160;&#160;&#160;&#160;William J. DeFrances</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">&#160;&#160;&#160;&#160;&#160;Vice President and Chief Accounting Officer</div>
            </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify;">&#160;&#160;&#160;&#160;&#160;(Principal Accounting Officer)</div>
            </td>

  </tr>


</table>
    </div>

    <div><br /></div>

    <div style="width: 100%;" class="BRPFPageFooter"></div>


  </div>
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>exhibit31-1.htm
<DESCRIPTION>CERTIFICATION OF CEO PURSUANT TO SECTION 302 OF SOX ACT OF 2002
<TEXT>
<html><head>
    <title>&nbsp;</title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 23.7.1.5162
         Copyright 1995 - 2023 Broadridge -->
  </head><body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><div id="TRGRSegment:f6ed59f4-cff4-4e1f-ac46-2e4163e8e5aa"><div style="text-align: right; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"><hr style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none" noshade="noshade" align="center"></div><div style="text-align: right; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">Exhibit 31.1</div><div><br></div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"><u>CERTIFICATION OF CHIEF EXECUTIVE OFFICER PURSUANT TO SECTION 302 OF THE</u></div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"><u>SARBANES-OXLEY ACT OF 2002</u></div><div><br></div><div><br></div><div><br></div><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">I, John M. Dillon, certify that:</div><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z4c706b4a994e41699b7a7a0df970b61e"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">1.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">I have reviewed this quarterly report on Form 10-Q of TransAct Technologies Incorporated;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="zc2ced4f5588440a4a59ca36f46bf93f2"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">2.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z1d48e3a124f645308c5989de86362b61"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z2a806d14f784470b8578bf9a55fcd2a2"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">4.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z0d4865ea2e9d4fc89e277cc9601dc108"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(a)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z259b7b7cbc4549a1a08072d47e021361"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(b)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z77b666db55604cccb4a81b860a42ff4a"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(c)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z79decf4e71664a5ab0a16657c12d87b0"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(d)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant's fourth fiscal quarter in case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="zf359246247864d35a1f57662c4e6d2e0"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">5.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of registrant's board of directors (or persons performing the equivalent functions):</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z10be5ecc1c71416ea05ec83e327010d2"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(a)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z25d9a22719354fcdbf843cb673edab15"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(b)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</div></td></tr></table><div><br></div><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Date: August 10, 2023</div><div><br></div><table cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="z8c3eea497af2493dade452a5a8514446"><tr><td style="width: 43.27%; vertical-align: top; border-bottom: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">/s/ John M. Dillon</div></td><td style="width: 56.73%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.27%; vertical-align: top; border-top: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">John M. Dillon</div></td><td style="width: 56.73%; vertical-align: top;"><div style="text-align: left; margin-left: 0.35pt; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.27%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Chief Executive Officer</div></td><td style="width: 56.73%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr></table><div><br></div><div><br></div><div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"><hr style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none" noshade="noshade" align="center"></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>exhibit31-2.htm
<DESCRIPTION>CERTIFICATION OF CFO PURSUANT TO SECTION 302 OF SOX ACT OF 2002
<TEXT>
<html><head>
    <title>&nbsp;</title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 23.7.1.5162
         Copyright 1995 - 2023 Broadridge -->
  </head><body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><div id="TRGRSegment:e9c8d55b-65f1-44dd-98ac-763b5baf96a4"><div style="text-align: right; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"><hr style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none" noshade="noshade" align="center"></div><div style="text-align: right; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">Exhibit 31.2</div><div><br></div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"><u>CERTIFICATION OF CHIEF FINANCIAL OFFICER PURSUANT TO SECTION 302 OF THE</u></div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"><u>SARBANES-OXLEY ACT OF 2002</u></div><div><br></div><div><br></div><div><br></div><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">I, Steven A. DeMartino, certify that:</div><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z9b22362ccb6d498b80a8cb058e483400"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">1.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">I have reviewed this quarterly report on Form 10-Q of TransAct Technologies Incorporated;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z2db9bce753ee4cb4970413872e8917bb"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">2.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z3a5d6aa7524545ada4757722ecedc4d1"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">3.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z7b05d8cec33443938fd37b9e2244392a"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">4.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z1a37470efaae4581aa4593d4dbfaeab2"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(a)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z0d58dfa9962c487bae1d62c32d53707b"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(b)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z88cc68ef17744eeab75930307edeb3d7"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(c)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z8ef2f29d00774171b345f56911c0c71e"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(d)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant's fourth fiscal quarter in case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z892dc37b66684b9a8079f2507d62bd7c"><tr><td style="width: 18pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">5.</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of registrant's board of directors (or persons performing the equivalent functions):</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="zb3b9e5ef91bd44c9a95f751ce76b31fc"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(a)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z0e199583556a43ab83b03baa74260162"><tr><td style="width: 54pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(b)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</div></td></tr></table><div><br></div><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Date: August 10, 2023</div><div><br></div><table cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="z8d829a65616e444d89b4828d7dc969d4"><tr><td style="width: 43.97%; vertical-align: top; border-bottom: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">/s/ Steven A. DeMartino</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.97%; vertical-align: top; border-top: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Steven A. DeMartino</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.97%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">President, Chief Financial Officer, Treasurer and Secretary</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr></table><div><br></div><div><br></div><div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"><hr style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none" noshade="noshade" align="center"></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>exhibit32-1.htm
<DESCRIPTION>CERTIFICATION OF CEO AND CFO PURSUANT TO SECTION 906 OF SOX ACT OF 2002
<TEXT>
<html><head>
    <title>&nbsp;</title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 23.7.1.5162
         Copyright 1995 - 2023 Broadridge -->
  </head><body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><div id="TRGRSegment:2e53db88-c89a-4eb8-8e65-3f16c8cbfcc9"><div style="text-align: right; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"><hr style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none" noshade="noshade" align="center"></div><div style="text-align: right; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">Exhibit 32.1</div><div><br></div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">CERTIFICATION PURSUANT TO</div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">18 U.S.C. SECTION 1350</div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">AS ADOPTED PURSUANT TO</div><div style="text-align: center; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</div><div><br></div><div style="text-align: justify; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">In connection with the Quarterly Report of TransAct Technologies Incorporated (the &#8220;Company&#8221;) on Form 10-Q for the period ended June 30, 2023, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), each of the undersigned officers of the Company, certifies, pursuant to 18 U.S.C. &#167; 1350, as adopted pursuant to &#167; 906 of the Sarbanes-Oxley Act of 2002, that to the best of his knowledge:</div><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="z65093d9e06e24ef6aa45986811605320"><tr><td style="width: 27.1pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(1)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</div></td></tr></table><div><br></div><table style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" cellpadding="0" cellspacing="0" id="zcc98ffcbb1484174977df85bfa84dd9e"><tr><td style="width: 27.1pt;"></td><td style="width: 18pt; vertical-align: top; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(2)</td><td style="width: auto; vertical-align: top; text-align: justify;"><div style="color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</div></td></tr></table><div><br></div><div><br></div><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Date:&#160;&#160;August 10, 2023</div><div><br></div><table cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="zc6b7319371474c039214870d7714ff2d"><tr><td style="width: 43.97%; vertical-align: top; border-bottom: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">/s/ John M. Dillon</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.97%; vertical-align: top; border-top: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">John M. Dillon</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.97%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Chief Executive Officer</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr></table><div><br></div><div><br></div><div><br></div><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Date:&#160;&#160;August 10, 2023</div><div><br></div><table cellpadding="0" cellspacing="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="ze2fd933657254c75a24a1a314cd58bdb"><tr><td style="width: 43.97%; vertical-align: top; border-bottom: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">/s/ Steven A. DeMartino</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.97%; vertical-align: top; border-top: #000000 2px solid;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Steven A. DeMartino</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr><tr><td style="width: 43.97%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">President, Chief Financial Officer, Treasurer and Secretary</div></td><td style="width: 56.03%; vertical-align: top;"><div style="text-align: left; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">&#160;</div></td></tr></table><div><br></div><div><br></div><div style="text-align: left; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"><hr style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none" noshade="noshade" align="center"></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>tact-20230630.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.7.1.5162 Broadridge-->
<xs:schema targetNamespace="http://transact-tech.com/20230630" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tact="http://transact-tech.com/20230630" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:us-types="http://fasb.org/us-types/2023" xmlns:srt-types="http://fasb.org/srt-types/2023">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="tact-20230630_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tact-20230630_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tact-20230630_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tact-20230630_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:roleType roleURI="http://transact-tech.com/role/DocumentAndEntityInformation" id="DocumentAndEntityInformation">
        <link:definition>000100 - Document - Document and Entity Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets" id="CondensedConsolidatedBalanceSheets">
        <link:definition>010000 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical" id="CondensedConsolidatedBalanceSheetsParenthetical">
        <!--Parent Role: CONDENSED CONSOLIDATED BALANCE SHEETS-->
        <link:definition>010100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations" id="CondensedConsolidatedStatementsOfOperations">
        <link:definition>020000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" id="CondensedConsolidatedStatementsOfComprehensiveIncomeLoss">
        <link:definition>030000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows" id="CondensedConsolidatedStatementsOfCashFlows">
        <link:definition>040000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity" id="CondensedConsolidatedStatementsOfChangesInShareholdersEquity">
        <link:definition>050000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/BasisOfPresentation" id="BasisOfPresentation">
        <link:definition>060100 - Disclosure - Basis of presentation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/SignificantAccountingPolicies" id="SignificantAccountingPolicies">
        <link:definition>060200 - Disclosure - Significant accounting policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/Revenue" id="Revenue">
        <link:definition>060300 - Disclosure - Revenue</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/Inventories" id="Inventories">
        <link:definition>060400 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/Debt" id="Debt">
        <link:definition>060500 - Disclosure - Debt</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/EarningsPerShare" id="EarningsPerShare">
        <link:definition>060600 - Disclosure - Earnings per share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/Leases" id="Leases">
        <link:definition>060700 - Disclosure - Leases</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/IncomeTaxes" id="IncomeTaxes">
        <link:definition>060800 - Disclosure - Income taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/SubsequentEvents" id="SubsequentEvents">
        <link:definition>060900 - Disclosure - Subsequent events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/BasisOfPresentationPolicies" id="BasisOfPresentationPolicies">
        <!--Parent Role: Basis of presentation-->
        <link:definition>070100 - Disclosure - Basis of presentation (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/SignificantAccountingPoliciesPolicies" id="SignificantAccountingPoliciesPolicies">
        <!--Parent Role: Significant accounting policies-->
        <link:definition>070200 - Disclosure - Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/RevenueTables" id="RevenueTables">
        <!--Parent Role: Revenue-->
        <link:definition>080300 - Disclosure - Revenue (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/InventoriesTables" id="InventoriesTables">
        <!--Parent Role: Inventories-->
        <link:definition>080400 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/EarningsPerShareTables" id="EarningsPerShareTables">
        <!--Parent Role: Earnings per share-->
        <link:definition>080600 - Disclosure - Earnings per share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/LeasesTables" id="LeasesTables">
        <!--Parent Role: Leases-->
        <link:definition>080700 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/BasisOfPresentationDetails" id="BasisOfPresentationDetails">
        <!--Parent Role: Basis of presentation-->
        <link:definition>090100 - Disclosure - Basis of presentation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails" id="RevenueDisaggregationOfRevenueDetails">
        <!--Parent Role: Revenue-->
        <link:definition>090300 - Disclosure - Revenue, Disaggregation of Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/RevenueContractBalancesDetails" id="RevenueContractBalancesDetails">
        <!--Parent Role: Revenue-->
        <link:definition>090302 - Disclosure - Revenue, Contract Balances (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails" id="RevenueRemainingPerformanceObligationsDetails">
        <!--Parent Role: Revenue-->
        <link:definition>090304 - Disclosure - Revenue, Remaining Performance Obligations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetailsDefault" id="RevenueRemainingPerformanceObligationsDetailsDefault">
        <link:definition>090304 - Disclosure - Revenue, Remaining Performance Obligations (Details)Default</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/InventoriesDetails" id="InventoriesDetails">
        <!--Parent Role: Inventories-->
        <link:definition>090400 - Disclosure - Inventories (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/DebtDetails" id="DebtDetails">
        <!--Parent Role: Debt-->
        <link:definition>090500 - Disclosure - Debt (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/EarningsPerShareDetails" id="EarningsPerShareDetails">
        <!--Parent Role: Earnings per share-->
        <link:definition>090600 - Disclosure - Earnings per share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/LeasesDetails" id="LeasesDetails">
        <!--Parent Role: Leases-->
        <link:definition>090700 - Disclosure - Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/LeasesDetailsCalc2" id="LeasesDetailsCalc2">
        <!--Parent Role: Leases (Details)-->
        <link:definition>090702 - Disclosure - Leases (Details) Calc 2</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://transact-tech.com/role/IncomeTaxesDetails" id="IncomeTaxesDetails">
        <!--Parent Role: Income taxes-->
        <link:definition>090800 - Disclosure - Income taxes (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:import namespace="http://fasb.org/us-gaap/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/currency/2023" schemaLocation="https://xbrl.sec.gov/currency/2023/currency-2023.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/exch/2023" schemaLocation="https://xbrl.sec.gov/exch/2023/exch-2023.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/naics/2023" schemaLocation="https://xbrl.sec.gov/naics/2023/naics-2023.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/sic/2023" schemaLocation="https://xbrl.sec.gov/sic/2023/sic-2023.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/stpr/2023" schemaLocation="https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd" />
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xs:import namespace="http://www.xbrl.org/2004/ref" schemaLocation="http://www.xbrl.org/2004/ref-2004-08-10.xsd" />
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xs:import namespace="http://fasb.org/us-types/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <xs:import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd" />
  <xs:import namespace="http://fasb.org/srt-types/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd" />
  <xs:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/ecd/2023" schemaLocation="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd" />
  <xs:element name="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" id="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="RevolvingCreditFacilitySienaLendingGroupLlcMember" id="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="DebtInstrumentFinancialCovenantEligibleInventory" id="tact_DebtInstrumentFinancialCovenantEligibleInventory" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" />
  <xs:element name="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" id="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" id="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" id="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" id="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="InternationalMember" id="tact_InternationalMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="FoodServiceTechnologyMember" id="tact_FoodServiceTechnologyMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="PosAutomationAndBankingMember" id="tact_PosAutomationAndBankingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="CasinoAndGamingMember" id="tact_CasinoAndGamingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="TransactServicesGroupMember" id="tact_TransactServicesGroupMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ContractWithCustomerAssetLiabilityNet" id="tact_ContractWithCustomerAssetLiabilityNet" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="ContractWithCustomerRevenueRecognized" id="tact_ContractWithCustomerRevenueRecognized" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" />
  <xs:element name="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" id="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" />
  <xs:element name="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" id="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" id="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="GainFromEmployeeRetentionCredit" id="tact_GainFromEmployeeRetentionCredit" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" />
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>tact-20230630_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.7.1.5162 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesDetailsCalc2" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesDetailsCalc2" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/InventoriesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#InventoriesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueContractBalancesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueContractBalancesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfOperations" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedBalanceSheets" />
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="calculation: StockholdersEquity to AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="RetainedEarningsAccumulatedDeficit" xlink:title="calculation: StockholdersEquity to RetainedEarningsAccumulatedDeficit" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="CommonStockValue" xlink:title="calculation: StockholdersEquity to CommonStockValue" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="AdditionalPaidInCapitalCommonStock" xlink:title="AdditionalPaidInCapitalCommonStock" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="AdditionalPaidInCapitalCommonStock" xlink:title="calculation: StockholdersEquity to AdditionalPaidInCapitalCommonStock" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue" xlink:label="TreasuryStockValue" xlink:title="TreasuryStockValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="TreasuryStockValue" xlink:title="calculation: StockholdersEquity to TreasuryStockValue" order="5.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="StockholdersEquity" xlink:title="calculation: LiabilitiesAndStockholdersEquity to StockholdersEquity" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesNoncurrent" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="calculation: LiabilitiesNoncurrent to OtherLiabilitiesNoncurrent" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesNoncurrent" xlink:to="ContractWithCustomerLiabilityNoncurrent" xlink:title="calculation: LiabilitiesNoncurrent to ContractWithCustomerLiabilityNoncurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesNoncurrent" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="calculation: LiabilitiesNoncurrent to OperatingLeaseLiabilityNoncurrent" order="3.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="Liabilities" xlink:to="LiabilitiesNoncurrent" xlink:title="calculation: Liabilities to LiabilitiesNoncurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="ContractWithCustomerLiabilityCurrent" xlink:title="calculation: LiabilitiesCurrent to ContractWithCustomerLiabilityCurrent" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="AccruedLiabilitiesCurrent" xlink:title="calculation: LiabilitiesCurrent to AccruedLiabilitiesCurrent" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="AccountsPayableCurrent" xlink:title="AccountsPayableCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="AccountsPayableCurrent" xlink:title="calculation: LiabilitiesCurrent to AccountsPayableCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="OperatingLeaseLiabilityCurrent" xlink:title="calculation: LiabilitiesCurrent to OperatingLeaseLiabilityCurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="LinesOfCreditCurrent" xlink:title="LinesOfCreditCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="LinesOfCreditCurrent" xlink:title="calculation: LiabilitiesCurrent to LinesOfCreditCurrent" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="Liabilities" xlink:to="LiabilitiesCurrent" xlink:title="calculation: Liabilities to LiabilitiesCurrent" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="Liabilities" xlink:title="calculation: LiabilitiesAndStockholdersEquity to Liabilities" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="AccountsReceivableNetCurrent" xlink:title="calculation: AssetsCurrent to AccountsReceivableNetCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="InventoryNet" xlink:title="calculation: AssetsCurrent to InventoryNet" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="OtherAssetsCurrent" xlink:title="calculation: AssetsCurrent to OtherAssetsCurrent" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="calculation: AssetsCurrent to CashAndCashEquivalentsAtCarryingValue" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NontradeReceivablesCurrent" xlink:label="NontradeReceivablesCurrent" xlink:title="NontradeReceivablesCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="NontradeReceivablesCurrent" xlink:title="calculation: AssetsCurrent to NontradeReceivablesCurrent" order="7.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="Assets" xlink:to="AssetsCurrent" xlink:title="calculation: Assets to AssetsCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsNoncurrent" xlink:to="OtherAssetsNoncurrent" xlink:title="calculation: AssetsNoncurrent to OtherAssetsNoncurrent" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsNoncurrent" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="calculation: AssetsNoncurrent to DeferredIncomeTaxAssetsNet" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="IntangibleAssetsNetExcludingGoodwill" xlink:title="IntangibleAssetsNetExcludingGoodwill" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsNoncurrent" xlink:to="IntangibleAssetsNetExcludingGoodwill" xlink:title="calculation: AssetsNoncurrent to IntangibleAssetsNetExcludingGoodwill" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsNoncurrent" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="calculation: AssetsNoncurrent to PropertyPlantAndEquipmentNet" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="Goodwill" xlink:title="Goodwill" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsNoncurrent" xlink:to="Goodwill" xlink:title="calculation: AssetsNoncurrent to Goodwill" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="AssetsNoncurrent" xlink:to="OperatingLeaseRightOfUseAsset" xlink:title="calculation: AssetsNoncurrent to OperatingLeaseRightOfUseAsset" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="Assets" xlink:to="AssetsNoncurrent" xlink:title="calculation: Assets to AssetsNoncurrent" order="2.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetIncomeLoss" xlink:to="IncomeTaxExpenseBenefit" xlink:title="calculation: NetIncomeLoss to IncomeTaxExpenseBenefit" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="OperatingExpenses" xlink:title="OperatingExpenses" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="OperatingExpenses" xlink:to="ResearchAndDevelopmentExpense" xlink:title="calculation: OperatingExpenses to ResearchAndDevelopmentExpense" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="SellingAndMarketingExpense" xlink:title="SellingAndMarketingExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="OperatingExpenses" xlink:to="SellingAndMarketingExpense" xlink:title="calculation: OperatingExpenses to SellingAndMarketingExpense" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="GeneralAndAdministrativeExpense" xlink:title="GeneralAndAdministrativeExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="OperatingExpenses" xlink:to="GeneralAndAdministrativeExpense" xlink:title="calculation: OperatingExpenses to GeneralAndAdministrativeExpense" order="3.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="OperatingExpenses" xlink:title="calculation: OperatingIncomeLoss to OperatingExpenses" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue" xlink:label="CostOfRevenue" xlink:title="CostOfRevenue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="GrossProfit" xlink:to="CostOfRevenue" xlink:title="calculation: GrossProfit to CostOfRevenue" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="GrossProfit" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="calculation: GrossProfit to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="GrossProfit" xlink:title="calculation: OperatingIncomeLoss to GrossProfit" order="0.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="OperatingIncomeLoss" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to OperatingIncomeLoss" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="NonoperatingIncomeExpense" xlink:title="NonoperatingIncomeExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NonoperatingIncomeExpense" xlink:to="OtherNonoperatingIncomeExpense" xlink:title="calculation: NonoperatingIncomeExpense to OtherNonoperatingIncomeExpense" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="InterestIncomeExpenseNonoperatingNet" xlink:title="InterestIncomeExpenseNonoperatingNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NonoperatingIncomeExpense" xlink:to="InterestIncomeExpenseNonoperatingNet" xlink:title="calculation: NonoperatingIncomeExpense to InterestIncomeExpenseNonoperatingNet" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="NonoperatingIncomeExpense" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to NonoperatingIncomeExpense" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetIncomeLoss" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="calculation: NetIncomeLoss to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="ComprehensiveIncomeNetOfTax" xlink:title="ComprehensiveIncomeNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="NetIncomeLoss" xlink:title="calculation: ComprehensiveIncomeNetOfTax to NetIncomeLoss" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="calculation: ComprehensiveIncomeNetOfTax to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="2.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="ShareBasedCompensation" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to ShareBasedCompensation" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:title="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" order="20.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="DepreciationAndAmortization" xlink:title="DepreciationAndAmortization" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="DepreciationAndAmortization" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to DepreciationAndAmortization" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="IncreaseDecreaseInOtherReceivables" xlink:title="IncreaseDecreaseInOtherReceivables" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInOtherReceivables" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInOtherReceivables" order="15.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:label="ForeignCurrencyTransactionGainLossUnrealized" xlink:title="ForeignCurrencyTransactionGainLossUnrealized" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="ForeignCurrencyTransactionGainLossUnrealized" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to ForeignCurrencyTransactionGainLossUnrealized" order="12.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInInventories" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInInventories" order="16.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="NetIncomeLoss" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to NetIncomeLoss" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="IncreaseDecreaseInAccountsPayable" xlink:title="IncreaseDecreaseInAccountsPayable" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccountsPayable" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccountsPayable" order="19.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="DeferredIncomeTaxExpenseBenefit" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to DeferredIncomeTaxExpenseBenefit" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccountsReceivable" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccountsReceivable" order="14.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="IncreaseDecreaseInOtherOperatingAssets" xlink:title="IncreaseDecreaseInOtherOperatingAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInOtherOperatingAssets" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInOtherOperatingAssets" order="18.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInOperatingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInOperatingActivities" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:title="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to PaymentsRelatedToTaxWithholdingForShareBasedCompensation" order="7.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfLoanCosts" xlink:label="PaymentsOfLoanCosts" xlink:title="PaymentsOfLoanCosts" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="PaymentsOfLoanCosts" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to PaymentsOfLoanCosts" order="8.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInFinancingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInFinancingActivities" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to PaymentsToAcquirePropertyPlantAndEquipment" order="5.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInInvestingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInInvestingActivities" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="2.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueContractBalancesDetails">
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerAssetLiabilityNet" xlink:label="ContractWithCustomerAssetLiabilityNet" xlink:title="ContractWithCustomerAssetLiabilityNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="ContractWithCustomerLiabilityCurrent" xlink:title="calculation: ContractWithCustomerAssetLiabilityNet to ContractWithCustomerLiabilityCurrent" order="3.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="ContractWithCustomerLiabilityNoncurrent" xlink:title="calculation: ContractWithCustomerAssetLiabilityNet to ContractWithCustomerLiabilityNoncurrent" order="4.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="ContractWithCustomerAssetNetNoncurrent" xlink:title="ContractWithCustomerAssetNetNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="ContractWithCustomerAssetNetNoncurrent" xlink:title="calculation: ContractWithCustomerAssetLiabilityNet to ContractWithCustomerAssetNetNoncurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="ContractWithCustomerAssetNetCurrent" xlink:title="ContractWithCustomerAssetNetCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="ContractWithCustomerAssetNetCurrent" xlink:title="calculation: ContractWithCustomerAssetLiabilityNet to ContractWithCustomerAssetNetCurrent" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:label="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:title="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:title="calculation: ContractWithCustomerAssetLiabilityNet to ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" order="2.0" weight="-1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/InventoriesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="InventoryFinishedGoodsNetOfReserves" xlink:title="InventoryFinishedGoodsNetOfReserves" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryFinishedGoodsNetOfReserves" xlink:title="calculation: InventoryNet to InventoryFinishedGoodsNetOfReserves" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:label="InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:title="InventoryRawMaterialsAndSuppliesNetOfReserves" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:title="calculation: InventoryNet to InventoryRawMaterialsAndSuppliesNetOfReserves" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="calculation: WeightedAverageNumberOfDilutedSharesOutstanding to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="calculation: WeightedAverageNumberOfDilutedSharesOutstanding to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:title="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" order="0.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesDetailsCalc2">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="OperatingLeaseLiability" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to OperatingLeaseLiability" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="calculation: LesseeOperatingLeaseLiabilityPaymentsDue to LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="0.0" weight="1.0" />
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>tact-20230630_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.7.1.5162 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:t1="http://xbrl.org/2005/xbrldt">
  <link:roleRef roleURI="http://transact-tech.com/role/IncomeTaxesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#IncomeTaxesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesDetailsCalc2" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesDetailsCalc2" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/DebtDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#DebtDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/InventoriesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#InventoriesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetailsDefault" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueRemainingPerformanceObligationsDetailsDefault" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueRemainingPerformanceObligationsDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueContractBalancesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueContractBalancesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueDisaggregationOfRevenueDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/BasisOfPresentationDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#BasisOfPresentationDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesTables" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShareTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/InventoriesTables" xlink:type="simple" xlink:href="tact-20230630.xsd#InventoriesTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueTables" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/SignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="tact-20230630.xsd#SignificantAccountingPoliciesPolicies" />
  <link:roleRef roleURI="http://transact-tech.com/role/BasisOfPresentationPolicies" xlink:type="simple" xlink:href="tact-20230630.xsd#BasisOfPresentationPolicies" />
  <link:roleRef roleURI="http://transact-tech.com/role/SubsequentEvents" xlink:type="simple" xlink:href="tact-20230630.xsd#SubsequentEvents" />
  <link:roleRef roleURI="http://transact-tech.com/role/IncomeTaxes" xlink:type="simple" xlink:href="tact-20230630.xsd#IncomeTaxes" />
  <link:roleRef roleURI="http://transact-tech.com/role/Leases" xlink:type="simple" xlink:href="tact-20230630.xsd#Leases" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShare" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShare" />
  <link:roleRef roleURI="http://transact-tech.com/role/Debt" xlink:type="simple" xlink:href="tact-20230630.xsd#Debt" />
  <link:roleRef roleURI="http://transact-tech.com/role/Inventories" xlink:type="simple" xlink:href="tact-20230630.xsd#Inventories" />
  <link:roleRef roleURI="http://transact-tech.com/role/Revenue" xlink:type="simple" xlink:href="tact-20230630.xsd#Revenue" />
  <link:roleRef roleURI="http://transact-tech.com/role/SignificantAccountingPolicies" xlink:type="simple" xlink:href="tact-20230630.xsd#SignificantAccountingPolicies" />
  <link:roleRef roleURI="http://transact-tech.com/role/BasisOfPresentation" xlink:type="simple" xlink:href="tact-20230630.xsd#BasisOfPresentation" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfChangesInShareholdersEquity" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfOperations" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedBalanceSheets" />
  <link:roleRef roleURI="http://transact-tech.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="tact-20230630.xsd#DocumentAndEntityInformation" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/DocumentAndEntityInformation" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="definition: StatementLineItems to IncreaseDecreaseInStockholdersEquityRollForward" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockTransactionsParentheticalDisclosuresAbstract" xlink:label="StockTransactionsParentheticalDisclosuresAbstract" xlink:title="StockTransactionsParentheticalDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockTransactionsParentheticalDisclosuresAbstract" xlink:title="definition: StatementLineItems to StockTransactionsParentheticalDisclosuresAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="definition: StatementLineItems to StockIssuedDuringPeriodSharesStockOptionsExercised" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:title="SharesPaidForTaxWithholdingForShareBasedCompensation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:title="definition: StatementLineItems to SharesPaidForTaxWithholdingForShareBasedCompensation" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockholdersEquity" xlink:title="definition: StatementLineItems to StockholdersEquity" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="StockIssuedDuringPeriodValueNewIssues" xlink:title="StockIssuedDuringPeriodValueNewIssues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodValueNewIssues" xlink:title="definition: StatementLineItems to StockIssuedDuringPeriodValueNewIssues" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="definition: StatementLineItems to AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:label="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:title="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:title="definition: StatementLineItems to StockGrantedDuringPeriodValueSharebasedCompensationForfeited" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="NetIncomeLoss" xlink:title="definition: StatementLineItems to NetIncomeLoss" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="definition: StatementLineItems to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="StatementLineItems" xlink:to="StatementTable" xlink:title="definition: StatementLineItems to StatementTable" order="11.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="StatementTable" xlink:to="StatementEquityComponentsAxis" xlink:title="definition: StatementTable to StatementEquityComponentsAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain_2" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain_2" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="CommonStockMember" xlink:title="definition: EquityComponentDomain to CommonStockMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AdditionalPaidInCapitalMember" xlink:title="definition: EquityComponentDomain to AdditionalPaidInCapitalMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="RetainedEarningsMember" xlink:title="definition: EquityComponentDomain to RetainedEarningsMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="TreasuryStockCommonMember" xlink:title="definition: EquityComponentDomain to TreasuryStockCommonMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="definition: EquityComponentDomain to AccumulatedOtherComprehensiveIncomeMember" order="5.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/BasisOfPresentation" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/SignificantAccountingPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Revenue" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Inventories" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Debt" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShare" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Leases" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/IncomeTaxes" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/SubsequentEvents" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/BasisOfPresentationPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/SignificantAccountingPoliciesPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/InventoriesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShareTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/BasisOfPresentationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_GainFromEmployeeRetentionCredit" xlink:label="GainFromEmployeeRetentionCredit" xlink:title="GainFromEmployeeRetentionCredit" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="GainFromEmployeeRetentionCredit" xlink:title="definition: DebtInstrumentLineItems to GainFromEmployeeRetentionCredit" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityMaximumBorrowingCapacity" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="4.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:label="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="RevolvingCreditFacilitySienaLendingGroupLlcMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="definition: DebtInstrumentNameDomain to RevolvingCreditFacilitySienaLendingGroupLlcMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="definition: DisaggregationOfRevenueLineItems to RevenueFromContractWithCustomerExcludingAssessedTax" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueTable" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="ProductOrServiceAxis" xlink:title="definition: DisaggregationOfRevenueTable to ProductOrServiceAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain" xlink:title="definition: ProductOrServiceAxis to ProductsAndServicesDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain_2" xlink:title="ProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain_2" xlink:title="definition: ProductOrServiceAxis to ProductsAndServicesDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_FoodServiceTechnologyMember" xlink:label="FoodServiceTechnologyMember" xlink:title="FoodServiceTechnologyMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="FoodServiceTechnologyMember" xlink:title="definition: ProductsAndServicesDomain to FoodServiceTechnologyMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_PosAutomationAndBankingMember" xlink:label="PosAutomationAndBankingMember" xlink:title="PosAutomationAndBankingMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="PosAutomationAndBankingMember" xlink:title="definition: ProductsAndServicesDomain to PosAutomationAndBankingMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_CasinoAndGamingMember" xlink:label="CasinoAndGamingMember" xlink:title="CasinoAndGamingMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="CasinoAndGamingMember" xlink:title="definition: ProductsAndServicesDomain to CasinoAndGamingMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_TransactServicesGroupMember" xlink:label="TransactServicesGroupMember" xlink:title="TransactServicesGroupMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ProductsAndServicesDomain" xlink:to="TransactServicesGroupMember" xlink:title="definition: ProductsAndServicesDomain to TransactServicesGroupMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="StatementGeographicalAxis" xlink:title="definition: DisaggregationOfRevenueTable to StatementGeographicalAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain_2" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain_2" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="definition: SegmentGeographicalDomain to US" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_InternationalMember" xlink:label="InternationalMember" xlink:title="InternationalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="InternationalMember" xlink:title="definition: SegmentGeographicalDomain to InternationalMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueContractBalancesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenuePerformanceObligationAbstract" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenuePerformanceObligationAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="RevenueRemainingPerformanceObligation" xlink:title="RevenueRemainingPerformanceObligation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenueRemainingPerformanceObligation" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenueRemainingPerformanceObligation" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" order="4.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetailsDefault">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenuePerformanceObligationAbstract" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenuePerformanceObligationAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="RevenueRemainingPerformanceObligation" xlink:title="RevenueRemainingPerformanceObligation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenueRemainingPerformanceObligation" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenueRemainingPerformanceObligation" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="definition: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" order="4.0" t1:closed="true" t1:contextElement="segment" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/InventoriesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/DebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityAbstract" xlink:label="LineOfCreditFacilityAbstract" xlink:title="LineOfCreditFacilityAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityAbstract" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityMaximumBorrowingCapacity" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentBasisSpreadOnVariableRate1" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="DebtInstrumentInterestRateStatedPercentage" xlink:title="DebtInstrumentInterestRateStatedPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentInterestRateStatedPercentage" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentInterestRateStatedPercentage" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFinanceCostsGross" xlink:label="DeferredFinanceCostsGross" xlink:title="DeferredFinanceCostsGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DeferredFinanceCostsGross" xlink:title="definition: DebtInstrumentLineItems to DeferredFinanceCostsGross" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:title="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:label="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:title="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentFinancialCovenantEligibleAccountsReceivable" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventory" xlink:label="DebtInstrumentFinancialCovenantEligibleInventory" xlink:title="DebtInstrumentFinancialCovenantEligibleInventory" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentFinancialCovenantEligibleInventory" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentFinancialCovenantEligibleInventory" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:label="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:title="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:label="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:title="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:title="LineOfCreditFacilityRemainingBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityRemainingBorrowingCapacity" order="11.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebt" xlink:label="SecuredDebt" xlink:title="SecuredDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="SecuredDebt" xlink:title="definition: DebtInstrumentLineItems to SecuredDebt" order="12.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:label="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:title="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" order="13.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:label="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:title="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" order="14.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:label="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:title="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" order="15.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:label="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:title="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" order="16.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="17.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="definition: DebtInstrumentTable to DebtInstrumentAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain_2" xlink:title="DebtInstrumentNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain_2" xlink:title="definition: DebtInstrumentAxis to DebtInstrumentNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:label="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="RevolvingCreditFacilitySienaLendingGroupLlcMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentNameDomain" xlink:to="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="definition: DebtInstrumentNameDomain to RevolvingCreditFacilitySienaLendingGroupLlcMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis" xlink:label="VariableRateAxis" xlink:title="VariableRateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="VariableRateAxis" xlink:title="definition: DebtInstrumentTable to VariableRateAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain" xlink:label="VariableRateDomain" xlink:title="VariableRateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="VariableRateAxis" xlink:to="VariableRateDomain" xlink:title="definition: VariableRateAxis to VariableRateDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain" xlink:label="VariableRateDomain_2" xlink:title="VariableRateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="VariableRateAxis" xlink:to="VariableRateDomain_2" xlink:title="definition: VariableRateAxis to VariableRateDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrimeRateMember" xlink:label="PrimeRateMember" xlink:title="PrimeRateMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableRateDomain" xlink:to="PrimeRateMember" xlink:title="definition: VariableRateDomain to PrimeRateMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="FederalFundsEffectiveSwapRateMember" xlink:title="FederalFundsEffectiveSwapRateMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableRateDomain" xlink:to="FederalFundsEffectiveSwapRateMember" xlink:title="definition: VariableRateDomain to FederalFundsEffectiveSwapRateMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="RangeAxis" xlink:title="definition: DebtInstrumentTable to RangeAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareReconciliationAbstract" xlink:label="EarningsPerShareReconciliationAbstract" xlink:title="EarningsPerShareReconciliationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="EarningsPerShareReconciliationAbstract" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to EarningsPerShareReconciliationAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="definition: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="AntidilutiveSecuritiesNameDomain" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to AntidilutiveSecuritiesNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain_2" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="AntidilutiveSecuritiesNameDomain_2" xlink:title="definition: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to AntidilutiveSecuritiesNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockCompensationPlanMember" xlink:label="StockCompensationPlanMember" xlink:title="StockCompensationPlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="AntidilutiveSecuritiesNameDomain" xlink:to="StockCompensationPlanMember" xlink:title="definition: AntidilutiveSecuritiesNameDomain to StockCompensationPlanMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesDetailsCalc2" />
  <link:definitionLink xlink:type="extended" xlink:role="http://transact-tech.com/role/IncomeTaxesDetails" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>tact-20230630_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.7.1.5162 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsReceivableNetCurrent_lbl" xml:lang="en-US" id="us-gaap_AccountsReceivableNetCurrent_lbl">Accounts receivable, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:title="label: AccountsReceivableNetCurrent to us-gaap_AccountsReceivableNetCurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:title="FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl">Intangible assets, accumulated amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:title="label: FiniteLivedIntangibleAssetsAccumulatedAmortization to us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl1" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl1">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl1" xlink:title="label: FiniteLivedIntangibleAssetsAccumulatedAmortization to us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl">Accumulated other comprehensive loss, net of tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" xlink:title="label: AccumulatedOtherComprehensiveIncomeLossNetOfTax to us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xml:lang="en-US" id="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl">Fixed assets, accumulated depreciation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" xlink:title="label: AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment to us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xlink:title="label: AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment to us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="AdditionalPaidInCapitalCommonStock" xlink:title="AdditionalPaidInCapitalCommonStock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xml:lang="en-US" id="us-gaap_AdditionalPaidInCapitalCommonStock_lbl">Additional paid-in capital</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xlink:title="label: AdditionalPaidInCapitalCommonStock to us-gaap_AdditionalPaidInCapitalCommonStock_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockCompensationPlanMember" xlink:label="StockCompensationPlanMember" xlink:title="StockCompensationPlanMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockCompensationPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockCompensationPlanMember_lbl" xml:lang="en-US" id="us-gaap_StockCompensationPlanMember_lbl">Stock Awards [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockCompensationPlanMember" xlink:to="us-gaap_StockCompensationPlanMember_lbl" xlink:title="label: StockCompensationPlanMember to us-gaap_StockCompensationPlanMember_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockCompensationPlanMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockCompensationPlanMember_lbl1" xml:lang="en-US" id="us-gaap_StockCompensationPlanMember_lbl1">Share-Based Payment Arrangement [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockCompensationPlanMember" xlink:to="us-gaap_StockCompensationPlanMember_lbl1" xlink:title="label: StockCompensationPlanMember to us-gaap_StockCompensationPlanMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfFinancialPositionAbstract_lbl" xml:lang="en-US" id="us-gaap_StatementOfFinancialPositionAbstract_lbl">CONSOLIDATED BALANCE SHEETS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:title="label: StatementOfFinancialPositionAbstract to us-gaap_StatementOfFinancialPositionAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareBasic_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareBasic_lbl">Basic (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl" xlink:title="label: EarningsPerShareBasic to us-gaap_EarningsPerShareBasic_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl">Cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:title="label: CashAndCashEquivalentsAtCarryingValue to us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl">Accounts receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:title="label: IncreaseDecreaseInAccountsReceivable to us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1">Increase (Decrease) in Accounts Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xlink:title="label: IncreaseDecreaseInAccountsReceivable to us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInInventories_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInInventories_lbl">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:title="label: IncreaseDecreaseInInventories to us-gaap_IncreaseDecreaseInInventories_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInInventories_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInInventories_lbl1">Increase (Decrease) in Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl1" xlink:title="label: IncreaseDecreaseInInventories to us-gaap_IncreaseDecreaseInInventories_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="IncreaseDecreaseInOtherReceivables" xlink:title="IncreaseDecreaseInOtherReceivables" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInOtherReceivables_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherReceivables_lbl">Employee retention credit receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherReceivables" xlink:to="us-gaap_IncreaseDecreaseInOtherReceivables_lbl" xlink:title="label: IncreaseDecreaseInOtherReceivables to us-gaap_IncreaseDecreaseInOtherReceivables_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOtherReceivables_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherReceivables_lbl1">Increase (Decrease) in Other Receivables</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherReceivables" xlink:to="us-gaap_IncreaseDecreaseInOtherReceivables_lbl1" xlink:title="label: IncreaseDecreaseInOtherReceivables to us-gaap_IncreaseDecreaseInOtherReceivables_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl">Changes in operating assets and liabilities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" xlink:title="label: IncreaseDecreaseInOperatingCapitalAbstract to us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="IncreaseDecreaseInAccountsPayable" xlink:title="IncreaseDecreaseInAccountsPayable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsPayable_lbl">Accounts payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:title="label: IncreaseDecreaseInAccountsPayable to us-gaap_IncreaseDecreaseInAccountsPayable_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1">Increase (Decrease) in Accounts Payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" xlink:title="label: IncreaseDecreaseInAccountsPayable to us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="CommonStockSharesAuthorized" xlink:title="CommonStockSharesAuthorized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesAuthorized_lbl" xml:lang="en-US" id="us-gaap_CommonStockSharesAuthorized_lbl">Common stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl" xlink:title="label: CommonStockSharesAuthorized to us-gaap_CommonStockSharesAuthorized_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="CommonStockSharesIssued" xlink:title="CommonStockSharesIssued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesIssued_lbl" xml:lang="en-US" id="us-gaap_CommonStockSharesIssued_lbl">Common stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl" xlink:title="label: CommonStockSharesIssued to us-gaap_CommonStockSharesIssued_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="CommonStockSharesOutstanding" xlink:title="CommonStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesOutstanding_lbl" xml:lang="en-US" id="us-gaap_CommonStockSharesOutstanding_lbl">Common stock, shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl" xlink:title="label: CommonStockSharesOutstanding to us-gaap_CommonStockSharesOutstanding_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CommonStockValue_lbl" xml:lang="en-US" id="us-gaap_CommonStockValue_lbl">Common stock, $0.01 par value, 20,000,000 shares authorized; 14,001,935 and 13,956,725 shares issued, respectively; 9,957,093 and 9,911,883 shares outstanding, respectively</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl" xlink:title="label: CommonStockValue to us-gaap_CommonStockValue_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockValue_lbl1" xml:lang="en-US" id="us-gaap_CommonStockValue_lbl1">Common Stock, Value, Issued</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl1" xlink:title="label: CommonStockValue to us-gaap_CommonStockValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="ComprehensiveIncomeNetOfTax" xlink:title="ComprehensiveIncomeNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTax_lbl">Comprehensive income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:title="label: ComprehensiveIncomeNetOfTax to us-gaap_ComprehensiveIncomeNetOfTax_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTax_lbl1">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl1" xlink:title="label: ComprehensiveIncomeNetOfTax to us-gaap_ComprehensiveIncomeNetOfTax_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue" xlink:label="CostOfRevenue" xlink:title="CostOfRevenue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfRevenue_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfRevenue_lbl" xml:lang="en-US" id="us-gaap_CostOfRevenue_lbl">Cost of sales</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfRevenue" xlink:to="us-gaap_CostOfRevenue_lbl" xlink:title="label: CostOfRevenue to us-gaap_CostOfRevenue_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesCurrent_lbl" xml:lang="en-US" id="us-gaap_LiabilitiesCurrent_lbl">Total current liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl" xlink:title="label: LiabilitiesCurrent to us-gaap_LiabilitiesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesCurrent_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesCurrent_lbl1">Liabilities, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl1" xlink:title="label: LiabilitiesCurrent to us-gaap_LiabilitiesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesCurrentAbstract_lbl" xml:lang="en-US" id="us-gaap_LiabilitiesCurrentAbstract_lbl">Current liabilities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:title="label: LiabilitiesCurrentAbstract to us-gaap_LiabilitiesCurrentAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="DebtDisclosureTextBlock" xlink:title="DebtDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtDisclosureTextBlock_lbl" xml:lang="en-US" id="us-gaap_DebtDisclosureTextBlock_lbl">Debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl" xlink:title="label: DebtDisclosureTextBlock to us-gaap_DebtDisclosureTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_DebtDisclosureTextBlock_lbl1">Debt Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl1" xlink:title="label: DebtDisclosureTextBlock to us-gaap_DebtDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="DebtInstrumentInterestRateStatedPercentage" xlink:title="DebtInstrumentInterestRateStatedPercentage" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl">Interest rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:title="label: DebtInstrumentInterestRateStatedPercentage to us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl1" xml:lang="en-US" id="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl1">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl1" xlink:title="label: DebtInstrumentInterestRateStatedPercentage to us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentNameDomain_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentNameDomain_lbl">Debt Instrument, Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentNameDomain" xlink:to="us-gaap_DebtInstrumentNameDomain_lbl" xlink:title="label: DebtInstrumentNameDomain to us-gaap_DebtInstrumentNameDomain_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DebtInstrumentsAbstract_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentsAbstract_lbl">Basis of presentation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentsAbstract" xlink:to="us-gaap_DebtInstrumentsAbstract_lbl" xlink:title="label: DebtInstrumentsAbstract to us-gaap_DebtInstrumentsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentsAbstract_lbl1" xml:lang="en-US" id="us-gaap_DebtInstrumentsAbstract_lbl1">Debt Instruments [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentsAbstract" xlink:to="us-gaap_DebtInstrumentsAbstract_lbl1" xlink:title="label: DebtInstrumentsAbstract to us-gaap_DebtInstrumentsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentAxis_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentAxis_lbl">Debt Instrument [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentAxis_lbl" xlink:title="label: DebtInstrumentAxis to us-gaap_DebtInstrumentAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentLineItems_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentLineItems_lbl">Debt Instrument [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentLineItems_lbl" xlink:title="label: DebtInstrumentLineItems to us-gaap_DebtInstrumentLineItems_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentTable_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentTable_lbl">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentTable_lbl" xlink:title="label: DebtInstrumentTable to us-gaap_DebtInstrumentTable_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl">Deferred income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:title="label: DeferredIncomeTaxExpenseBenefit to us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="DepreciationAndAmortization" xlink:title="DepreciationAndAmortization" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DepreciationAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DepreciationAndAmortization_lbl" xml:lang="en-US" id="us-gaap_DepreciationAndAmortization_lbl">Depreciation and amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl" xlink:title="label: DepreciationAndAmortization to us-gaap_DepreciationAndAmortization_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareDiluted_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted_lbl">Diluted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareDiluted_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted_lbl1">Earnings Per Share, Diluted</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl1" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="EffectiveIncomeTaxRateContinuingOperations" xlink:title="EffectiveIncomeTaxRateContinuingOperations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xml:lang="en-US" id="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl">Effective tax rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:title="label: EffectiveIncomeTaxRateContinuingOperations to us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensation_lbl" xml:lang="en-US" id="us-gaap_ShareBasedCompensation_lbl">Share-based compensation expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl" xlink:title="label: ShareBasedCompensation to us-gaap_ShareBasedCompensation_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="GeneralAndAdministrativeExpense" xlink:title="GeneralAndAdministrativeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GeneralAndAdministrativeExpense_lbl" xml:lang="en-US" id="us-gaap_GeneralAndAdministrativeExpense_lbl">General and administrative</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl" xlink:title="label: GeneralAndAdministrativeExpense to us-gaap_GeneralAndAdministrativeExpense_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_GrossProfit_lbl" xml:lang="en-US" id="us-gaap_GrossProfit_lbl">Gross profit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GrossProfit" xlink:to="us-gaap_GrossProfit_lbl" xlink:title="label: GrossProfit to us-gaap_GrossProfit_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GrossProfit_lbl1" xml:lang="en-US" id="us-gaap_GrossProfit_lbl1">Gross Profit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GrossProfit" xlink:to="us-gaap_GrossProfit_lbl1" xlink:title="label: GrossProfit to us-gaap_GrossProfit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="IncomeStatementAbstract" xlink:title="IncomeStatementAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeStatementAbstract_lbl" xml:lang="en-US" id="us-gaap_IncomeStatementAbstract_lbl">CONSOLIDATED STATEMENTS OF OPERATIONS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl" xlink:title="label: IncomeStatementAbstract to us-gaap_IncomeStatementAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="IncomeTaxDisclosureTextBlock" xlink:title="IncomeTaxDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureTextBlock_lbl">Income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:title="label: IncomeTaxDisclosureTextBlock to us-gaap_IncomeTaxDisclosureTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureTextBlock_lbl1">Income Tax Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl1" xlink:title="label: IncomeTaxDisclosureTextBlock to us-gaap_IncomeTaxDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="IncreaseDecreaseInOtherOperatingAssets" xlink:title="IncreaseDecreaseInOtherOperatingAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl">Other current and long-term assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" xlink:title="label: IncreaseDecreaseInOtherOperatingAssets to us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl1">Increase (Decrease) in Other Operating Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl1" xlink:title="label: IncreaseDecreaseInOtherOperatingAssets to us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xml:lang="en-US" id="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl">Add: Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xlink:title="label: IncrementalCommonSharesAttributableToShareBasedPaymentArrangements to us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="IntangibleAssetsNetExcludingGoodwill" xlink:title="IntangibleAssetsNetExcludingGoodwill" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xml:lang="en-US" id="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl">Intangible assets, net of accumulated amortization of $1,441 and $1,364, respectively</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" xlink:title="label: IntangibleAssetsNetExcludingGoodwill to us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl1" xml:lang="en-US" id="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl1">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl1" xlink:title="label: IntangibleAssetsNetExcludingGoodwill to us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="Goodwill" xlink:title="Goodwill" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_Goodwill_lbl" xml:lang="en-US" id="us-gaap_Goodwill_lbl">Goodwill</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Goodwill" xlink:to="us-gaap_Goodwill_lbl" xlink:title="label: Goodwill to us-gaap_Goodwill_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_InventoryNet_lbl" xml:lang="en-US" id="us-gaap_InventoryNet_lbl">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet_lbl" xlink:title="label: InventoryNet to us-gaap_InventoryNet_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryNet_lbl1" xml:lang="en-US" id="us-gaap_InventoryNet_lbl1">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet_lbl1" xlink:title="label: InventoryNet to us-gaap_InventoryNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_Liabilities_lbl" xml:lang="en-US" id="us-gaap_Liabilities_lbl">Total liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Liabilities" xlink:to="us-gaap_Liabilities_lbl" xlink:title="label: Liabilities to us-gaap_Liabilities_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_Liabilities_lbl1" xml:lang="en-US" id="us-gaap_Liabilities_lbl1">Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Liabilities" xlink:to="us-gaap_Liabilities_lbl1" xlink:title="label: Liabilities to us-gaap_Liabilities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquity_lbl">Total liabilities and shareholders' equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:title="label: LiabilitiesAndStockholdersEquity to us-gaap_LiabilitiesAndStockholdersEquity_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquity_lbl1">Liabilities and Equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xlink:title="label: LiabilitiesAndStockholdersEquity to us-gaap_LiabilitiesAndStockholdersEquity_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl">Liabilities and Shareholders' Equity:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:title="label: LiabilitiesAndStockholdersEquityAbstract to us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="LinesOfCreditCurrent" xlink:title="LinesOfCreditCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LinesOfCreditCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LinesOfCreditCurrent_lbl" xml:lang="en-US" id="us-gaap_LinesOfCreditCurrent_lbl">Current portion of revolving loan payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LinesOfCreditCurrent" xlink:to="us-gaap_LinesOfCreditCurrent_lbl" xlink:title="label: LinesOfCreditCurrent to us-gaap_LinesOfCreditCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LinesOfCreditCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LinesOfCreditCurrent_lbl1" xml:lang="en-US" id="us-gaap_LinesOfCreditCurrent_lbl1">Line of Credit, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LinesOfCreditCurrent" xlink:to="us-gaap_LinesOfCreditCurrent_lbl1" xlink:title="label: LinesOfCreditCurrent to us-gaap_LinesOfCreditCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl">Maximum borrowing capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:title="label: LineOfCreditFacilityMaximumBorrowingCapacity to us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl1" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl1">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl1" xlink:title="label: LineOfCreditFacilityMaximumBorrowingCapacity to us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:title="LineOfCreditFacilityRemainingBorrowingCapacity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl">Additional borrowing capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl" xlink:title="label: LineOfCreditFacilityRemainingBorrowingCapacity to us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl1" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl1">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl1" xlink:title="label: LineOfCreditFacilityRemainingBorrowingCapacity to us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityAbstract" xlink:label="LineOfCreditFacilityAbstract" xlink:title="LineOfCreditFacilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LineOfCreditFacilityAbstract_lbl" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityAbstract_lbl">Debt [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityAbstract" xlink:to="us-gaap_LineOfCreditFacilityAbstract_lbl" xlink:title="label: LineOfCreditFacilityAbstract to us-gaap_LineOfCreditFacilityAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityAbstract_lbl1" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityAbstract_lbl1">Line of Credit Facility [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityAbstract" xlink:to="us-gaap_LineOfCreditFacilityAbstract_lbl1" xlink:title="label: LineOfCreditFacilityAbstract to us-gaap_LineOfCreditFacilityAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfLoanCosts" xlink:label="PaymentsOfLoanCosts" xlink:title="PaymentsOfLoanCosts" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsOfLoanCosts_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsOfLoanCosts_lbl" xml:lang="en-US" id="us-gaap_PaymentsOfLoanCosts_lbl">Payment of bank financing costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsOfLoanCosts" xlink:to="us-gaap_PaymentsOfLoanCosts_lbl" xlink:title="label: PaymentsOfLoanCosts to us-gaap_PaymentsOfLoanCosts_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsOfLoanCosts_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsOfLoanCosts_lbl1" xml:lang="en-US" id="us-gaap_PaymentsOfLoanCosts_lbl1">Payments of Loan Costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsOfLoanCosts" xlink:to="us-gaap_PaymentsOfLoanCosts_lbl1" xlink:title="label: PaymentsOfLoanCosts to us-gaap_PaymentsOfLoanCosts_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl">Net cash used in financing activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:title="label: NetCashProvidedByUsedInFinancingActivities to us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInFinancingActivities to us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl">Cash flows from financing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:title="label: NetCashProvidedByUsedInFinancingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl">Net cash used in investing activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:title="label: NetCashProvidedByUsedInInvestingActivities to us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInInvestingActivities to us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl">Cash flows from investing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:title="label: NetCashProvidedByUsedInInvestingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl">Net cash provided by (used in) operating activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:title="label: NetCashProvidedByUsedInOperatingActivities to us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInOperatingActivities to us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl">Cash flows from operating activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:title="label: NetCashProvidedByUsedInOperatingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLoss_lbl" xml:lang="en-US" id="us-gaap_NetIncomeLoss_lbl">Net income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetIncomeLoss_lbl1" xml:lang="en-US" id="us-gaap_NetIncomeLoss_lbl1">Net income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl1" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="NonoperatingIncomeExpense" xlink:title="NonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NonoperatingIncomeExpense_lbl" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpense_lbl">Interest and other (expense) income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl" xlink:title="label: NonoperatingIncomeExpense to us-gaap_NonoperatingIncomeExpense_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NonoperatingIncomeExpense_lbl1" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpense_lbl1">Nonoperating Income (Expense)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl1" xlink:title="label: NonoperatingIncomeExpense to us-gaap_NonoperatingIncomeExpense_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="NonoperatingIncomeExpenseAbstract" xlink:title="NonoperatingIncomeExpenseAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpenseAbstract_lbl">Interest and other income (expense):</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl" xlink:title="label: NonoperatingIncomeExpenseAbstract to us-gaap_NonoperatingIncomeExpenseAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NonoperatingIncomeExpenseAbstract_lbl1" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpenseAbstract_lbl1">Nonoperating Income (Expense) [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl1" xlink:title="label: NonoperatingIncomeExpenseAbstract to us-gaap_NonoperatingIncomeExpenseAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AssetsNoncurrent_lbl" xml:lang="en-US" id="us-gaap_AssetsNoncurrent_lbl">Total noncurrent assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent_lbl" xlink:title="label: AssetsNoncurrent to us-gaap_AssetsNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_AssetsNoncurrent_lbl1">Assets, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsNoncurrent" xlink:to="us-gaap_AssetsNoncurrent_lbl1" xlink:title="label: AssetsNoncurrent to us-gaap_AssetsNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesNoncurrent_lbl" xml:lang="en-US" id="us-gaap_LiabilitiesNoncurrent_lbl">Total noncurrent liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_lbl" xlink:title="label: LiabilitiesNoncurrent to us-gaap_LiabilitiesNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesNoncurrent_lbl1">Liabilities, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesNoncurrent" xlink:to="us-gaap_LiabilitiesNoncurrent_lbl1" xlink:title="label: LiabilitiesNoncurrent to us-gaap_LiabilitiesNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OperatingIncomeLoss_lbl" xml:lang="en-US" id="us-gaap_OperatingIncomeLoss_lbl">Operating income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl" xlink:title="label: OperatingIncomeLoss to us-gaap_OperatingIncomeLoss_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingIncomeLoss_lbl1" xml:lang="en-US" id="us-gaap_OperatingIncomeLoss_lbl1">Operating Income (Loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl1" xlink:title="label: OperatingIncomeLoss to us-gaap_OperatingIncomeLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsCurrent_lbl" xml:lang="en-US" id="us-gaap_OtherAssetsCurrent_lbl">Other current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent_lbl" xlink:title="label: OtherAssetsCurrent to us-gaap_OtherAssetsCurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherNonoperatingIncomeExpense_lbl" xml:lang="en-US" id="us-gaap_OtherNonoperatingIncomeExpense_lbl">Other, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_lbl" xlink:title="label: OtherNonoperatingIncomeExpense to us-gaap_OtherNonoperatingIncomeExpense_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentNet_lbl" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet_lbl">Fixed assets, net of accumulated depreciation of $18,193 and $17,656, respectively</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentNet_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet_lbl1">Property, Plant and Equipment, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl1" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xml:lang="en-US" id="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl">Capital expenditures</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:title="label: PaymentsToAcquirePropertyPlantAndEquipment to us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xlink:title="label: PaymentsToAcquirePropertyPlantAndEquipment to us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xml:lang="en-US" id="us-gaap_RetainedEarningsAccumulatedDeficit_lbl">Retained earnings</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:title="label: RetainedEarningsAccumulatedDeficit to us-gaap_RetainedEarningsAccumulatedDeficit_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="InventoryDisclosureTextBlock" xlink:title="InventoryDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InventoryDisclosureTextBlock_lbl" xml:lang="en-US" id="us-gaap_InventoryDisclosureTextBlock_lbl">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl" xlink:title="label: InventoryDisclosureTextBlock to us-gaap_InventoryDisclosureTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_InventoryDisclosureTextBlock_lbl1">Inventory Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl1" xlink:title="label: InventoryDisclosureTextBlock to us-gaap_InventoryDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebt" xlink:label="SecuredDebt" xlink:title="SecuredDebt" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SecuredDebt_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SecuredDebt_lbl" xml:lang="en-US" id="us-gaap_SecuredDebt_lbl">Balance outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SecuredDebt" xlink:to="us-gaap_SecuredDebt_lbl" xlink:title="label: SecuredDebt to us-gaap_SecuredDebt_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SecuredDebt_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SecuredDebt_lbl1" xml:lang="en-US" id="us-gaap_SecuredDebt_lbl1">Secured Debt</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SecuredDebt" xlink:to="us-gaap_SecuredDebt_lbl1" xlink:title="label: SecuredDebt to us-gaap_SecuredDebt_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="SellingAndMarketingExpense" xlink:title="SellingAndMarketingExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SellingAndMarketingExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SellingAndMarketingExpense_lbl" xml:lang="en-US" id="us-gaap_SellingAndMarketingExpense_lbl">Selling and marketing</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SellingAndMarketingExpense" xlink:to="us-gaap_SellingAndMarketingExpense_lbl" xlink:title="label: SellingAndMarketingExpense to us-gaap_SellingAndMarketingExpense_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="StatementOfCashFlowsAbstract" xlink:title="StatementOfCashFlowsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfCashFlowsAbstract_lbl" xml:lang="en-US" id="us-gaap_StatementOfCashFlowsAbstract_lbl">CONSOLIDATED STATEMENTS OF CASH FLOWS [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:title="label: StatementOfCashFlowsAbstract to us-gaap_StatementOfCashFlowsAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:title="StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl" xml:lang="en-US" id="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl" xlink:title="label: StatementOfIncomeAndComprehensiveIncomeAbstract to us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="StatementOfStockholdersEquityAbstract" xlink:title="StatementOfStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xml:lang="en-US" id="us-gaap_StatementOfStockholdersEquityAbstract_lbl">CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xlink:title="label: StatementOfStockholdersEquityAbstract to us-gaap_StatementOfStockholdersEquityAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="StockholdersEquityAbstract" xlink:title="StockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquityAbstract_lbl" xml:lang="en-US" id="us-gaap_StockholdersEquityAbstract_lbl">Shareholders' equity:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl" xlink:title="label: StockholdersEquityAbstract to us-gaap_StockholdersEquityAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AssetsCurrent_lbl" xml:lang="en-US" id="us-gaap_AssetsCurrent_lbl">Total current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl" xlink:title="label: AssetsCurrent to us-gaap_AssetsCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsCurrent_lbl1" xml:lang="en-US" id="us-gaap_AssetsCurrent_lbl1">Assets, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl1" xlink:title="label: AssetsCurrent to us-gaap_AssetsCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsCurrentAbstract_lbl" xml:lang="en-US" id="us-gaap_AssetsCurrentAbstract_lbl">Current assets:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl" xlink:title="label: AssetsCurrentAbstract to us-gaap_AssetsCurrentAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl">Diluted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:title="label: WeightedAverageNumberOfDilutedSharesOutstanding to us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1">Diluted: Weighted average common and common equivalent shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1" xlink:title="label: WeightedAverageNumberOfDilutedSharesOutstanding to us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl">Basic (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:title="label: WeightedAverageNumberOfSharesOutstandingBasic to us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl1">Basic: Weighted average common shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl1" xlink:title="label: WeightedAverageNumberOfSharesOutstandingBasic to us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockMember_lbl" xml:lang="en-US" id="us-gaap_CommonStockMember_lbl">Common Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl" xlink:title="label: CommonStockMember to us-gaap_CommonStockMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ResearchAndDevelopmentExpense_lbl" xml:lang="en-US" id="us-gaap_ResearchAndDevelopmentExpense_lbl">Engineering, design and product development</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl" xlink:title="label: ResearchAndDevelopmentExpense to us-gaap_ResearchAndDevelopmentExpense_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_Assets_lbl" xml:lang="en-US" id="us-gaap_Assets_lbl">Total assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Assets" xlink:to="us-gaap_Assets_lbl" xlink:title="label: Assets to us-gaap_Assets_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Assets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_Assets_lbl1" xml:lang="en-US" id="us-gaap_Assets_lbl1">Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Assets" xlink:to="us-gaap_Assets_lbl1" xlink:title="label: Assets to us-gaap_Assets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesNoncurrent_lbl" xml:lang="en-US" id="us-gaap_OtherLiabilitiesNoncurrent_lbl">Other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:title="label: OtherLiabilitiesNoncurrent to us-gaap_OtherLiabilitiesNoncurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementTable_lbl" xml:lang="en-US" id="us-gaap_StatementTable_lbl">Statement [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementTable" xlink:to="us-gaap_StatementTable_lbl" xlink:title="label: StatementTable to us-gaap_StatementTable_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesNameDomain_lbl">Antidilutive Securities, Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xlink:title="label: AntidilutiveSecuritiesNameDomain to us-gaap_AntidilutiveSecuritiesNameDomain_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsAbstract_lbl" xml:lang="en-US" id="us-gaap_AssetsAbstract_lbl">Assets:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl" xlink:title="label: AssetsAbstract to us-gaap_AssetsAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementLineItems_lbl" xml:lang="en-US" id="us-gaap_StatementLineItems_lbl">Statement [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl" xlink:title="label: StatementLineItems to us-gaap_StatementLineItems_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue" xlink:label="TreasuryStockValue" xlink:title="TreasuryStockValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_TreasuryStockValue_lbl" xml:lang="en-US" id="us-gaap_TreasuryStockValue_lbl">Treasury stock, at cost (4,044,842 shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl" xlink:title="label: TreasuryStockValue to us-gaap_TreasuryStockValue_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockValue_lbl1" xml:lang="en-US" id="us-gaap_TreasuryStockValue_lbl1">Treasury Stock, Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl1" xlink:title="label: TreasuryStockValue to us-gaap_TreasuryStockValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" xlink:title="label: IncreaseDecreaseInStockholdersEquityRollForward to us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsNoncurrent_lbl" xml:lang="en-US" id="us-gaap_OtherAssetsNoncurrent_lbl">Other assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl" xlink:title="label: OtherAssetsNoncurrent to us-gaap_OtherAssetsNoncurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="OperatingExpensesAbstract" xlink:title="OperatingExpensesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingExpensesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingExpensesAbstract_lbl" xml:lang="en-US" id="us-gaap_OperatingExpensesAbstract_lbl">Operating expenses:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl" xlink:title="label: OperatingExpensesAbstract to us-gaap_OperatingExpensesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="OperatingExpenses" xlink:title="OperatingExpenses" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OperatingExpenses_lbl" xml:lang="en-US" id="us-gaap_OperatingExpenses_lbl">Operating expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl" xlink:title="label: OperatingExpenses to us-gaap_OperatingExpenses_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingExpenses_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingExpenses_lbl1" xml:lang="en-US" id="us-gaap_OperatingExpenses_lbl1">Operating Expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl1" xlink:title="label: OperatingExpenses to us-gaap_OperatingExpenses_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="EarningsPerShareBasicAbstract" xlink:title="EarningsPerShareBasicAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareBasicAbstract_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareBasicAbstract_lbl">Net income (loss) per common share [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl" xlink:title="label: EarningsPerShareBasicAbstract to us-gaap_EarningsPerShareBasicAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasicAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareBasicAbstract_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareBasicAbstract_lbl1">Earnings Per Share, Basic [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasicAbstract" xlink:to="us-gaap_EarningsPerShareBasicAbstract_lbl1" xlink:title="label: EarningsPerShareBasicAbstract to us-gaap_EarningsPerShareBasicAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract" xlink:label="EarningsPerShareBasicOtherDisclosuresAbstract" xlink:title="EarningsPerShareBasicOtherDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract_lbl">Shares used in per-share calculation:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasicOtherDisclosuresAbstract" xlink:to="us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract_lbl" xlink:title="label: EarningsPerShareBasicOtherDisclosuresAbstract to us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareReconciliationAbstract" xlink:label="EarningsPerShareReconciliationAbstract" xlink:title="EarningsPerShareReconciliationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareReconciliationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareReconciliationAbstract_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareReconciliationAbstract_lbl">Earnings per share [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="us-gaap_EarningsPerShareReconciliationAbstract_lbl" xlink:title="label: EarningsPerShareReconciliationAbstract to us-gaap_EarningsPerShareReconciliationAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareReconciliationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareReconciliationAbstract_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareReconciliationAbstract_lbl1">Earnings Per Share Reconciliation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="us-gaap_EarningsPerShareReconciliationAbstract_lbl1" xlink:title="label: EarningsPerShareReconciliationAbstract to us-gaap_EarningsPerShareReconciliationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl">Anti-dilutive securities excluded from computation of earnings per dilutive share (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:title="label: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount to us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl">Antidilutive Securities [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xlink:title="label: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xml:lang="en-US" id="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xlink:title="label: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareAbstract_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareAbstract_lbl">Net income (loss) per common share:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl" xlink:title="label: EarningsPerShareAbstract to us-gaap_EarningsPerShareAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareAbstract_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareAbstract_lbl1">Earnings per share [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl1" xlink:title="label: EarningsPerShareAbstract to us-gaap_EarningsPerShareAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xml:lang="en-US" id="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xlink:title="label: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="CommonStockParOrStatedValuePerShare" xlink:title="CommonStockParOrStatedValuePerShare" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xml:lang="en-US" id="us-gaap_CommonStockParOrStatedValuePerShare_lbl">Common stock, par value (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:title="label: CommonStockParOrStatedValuePerShare to us-gaap_CommonStockParOrStatedValuePerShare_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_StockholdersEquity_lbl" xml:lang="en-US" id="us-gaap_StockholdersEquity_lbl">Total shareholders' equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_StockholdersEquity_lbl1" xml:lang="en-US" id="us-gaap_StockholdersEquity_lbl1">Ending balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl1" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity_lbl1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl2" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_StockholdersEquity_lbl2" xml:lang="en-US" id="us-gaap_StockholdersEquity_lbl2">Beginning balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl2" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity_lbl2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquity_lbl3" xml:lang="en-US" id="us-gaap_StockholdersEquity_lbl3">Equity, Attributable to Parent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl3" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity_lbl3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncomeTaxExpenseBenefit_lbl" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit_lbl">Income tax (expense) benefit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl1" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncomeTaxExpenseBenefit_lbl1" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit_lbl1">Income tax (expense) benefit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl1" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit_lbl1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxExpenseBenefit_lbl2" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit_lbl2">Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl2" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:label="ForeignCurrencyTransactionGainLossUnrealized" xlink:title="ForeignCurrencyTransactionGainLossUnrealized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl" xml:lang="en-US" id="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl">Unrealized foreign currency transaction losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionGainLossUnrealized" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl" xlink:title="label: ForeignCurrencyTransactionGainLossUnrealized to us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl1" xml:lang="en-US" id="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl1">Unrealized Gain (Loss), Foreign Currency Transaction, before Tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionGainLossUnrealized" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl1" xlink:title="label: ForeignCurrencyTransactionGainLossUnrealized to us-gaap_ForeignCurrencyTransactionGainLossUnrealized_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementEquityComponentsAxis_lbl" xml:lang="en-US" id="us-gaap_StatementEquityComponentsAxis_lbl">Equity Components [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl" xlink:title="label: StatementEquityComponentsAxis to us-gaap_StatementEquityComponentsAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdditionalPaidInCapitalMember_lbl" xml:lang="en-US" id="us-gaap_AdditionalPaidInCapitalMember_lbl">Additional Paid-in Capital [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:title="label: AdditionalPaidInCapitalMember to us-gaap_AdditionalPaidInCapitalMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RetainedEarningsMember_lbl" xml:lang="en-US" id="us-gaap_RetainedEarningsMember_lbl">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl" xlink:title="label: RetainedEarningsMember to us-gaap_RetainedEarningsMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl">Accumulated Other Comprehensive (Loss) Income [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" xlink:title="label: AccumulatedOtherComprehensiveIncomeMember to us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl1" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl1">AOCI Attributable to Parent [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl1" xlink:title="label: AccumulatedOtherComprehensiveIncomeMember to us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EquityComponentDomain_lbl" xml:lang="en-US" id="us-gaap_EquityComponentDomain_lbl">Equity Component [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl" xlink:title="label: EquityComponentDomain to us-gaap_EquityComponentDomain_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="CapitalExpendituresIncurredButNotYetPaid" xlink:title="CapitalExpendituresIncurredButNotYetPaid" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl" xml:lang="en-US" id="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl">Non-cash capital expenditure items</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CapitalExpendituresIncurredButNotYetPaid" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl" xlink:title="label: CapitalExpendituresIncurredButNotYetPaid to us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" xml:lang="en-US" id="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1">Capital Expenditures Incurred but Not yet Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CapitalExpendituresIncurredButNotYetPaid" xlink:to="us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" xlink:title="label: CapitalExpendituresIncurredButNotYetPaid to us-gaap_CapitalExpendituresIncurredButNotYetPaid_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="StockIssuedDuringPeriodValueNewIssues" xlink:title="StockIssuedDuringPeriodValueNewIssues" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl">Issuance of common stock from restricted stock units</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodValueNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" xlink:title="label: StockIssuedDuringPeriodValueNewIssues to us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl1" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl1">Stock Issued During Period, Value, New Issues</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodValueNewIssues" xlink:to="us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl1" xlink:title="label: StockIssuedDuringPeriodValueNewIssues to us-gaap_StockIssuedDuringPeriodValueNewIssues_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl">Issuance of shares from stock awards (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" xlink:title="label: StockIssuedDuringPeriodSharesStockOptionsExercised to us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" xlink:title="label: StockIssuedDuringPeriodSharesStockOptionsExercised to us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="InventoryFinishedGoodsNetOfReserves" xlink:title="InventoryFinishedGoodsNetOfReserves" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryFinishedGoodsNetOfReserves_lbl" xml:lang="en-US" id="us-gaap_InventoryFinishedGoodsNetOfReserves_lbl">Finished goods</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryFinishedGoodsNetOfReserves" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves_lbl" xlink:title="label: InventoryFinishedGoodsNetOfReserves to us-gaap_InventoryFinishedGoodsNetOfReserves_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:label="InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:title="InventoryRawMaterialsAndSuppliesNetOfReserves" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves_lbl" xml:lang="en-US" id="us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves_lbl">Raw materials and purchased component parts</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves_lbl" xlink:title="label: InventoryRawMaterialsAndSuppliesNetOfReserves to us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFinanceCostsGross" xlink:label="DeferredFinanceCostsGross" xlink:title="DeferredFinanceCostsGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredFinanceCostsGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredFinanceCostsGross_lbl" xml:lang="en-US" id="us-gaap_DeferredFinanceCostsGross_lbl">Deferred financing costs</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredFinanceCostsGross" xlink:to="us-gaap_DeferredFinanceCostsGross_lbl" xlink:title="label: DeferredFinanceCostsGross to us-gaap_DeferredFinanceCostsGross_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredFinanceCostsGross_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredFinanceCostsGross_lbl1" xml:lang="en-US" id="us-gaap_DeferredFinanceCostsGross_lbl1">Debt Issuance Costs, Gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredFinanceCostsGross" xlink:to="us-gaap_DeferredFinanceCostsGross_lbl1" xlink:title="label: DeferredFinanceCostsGross to us-gaap_DeferredFinanceCostsGross_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockTransactionsParentheticalDisclosuresAbstract" xlink:label="StockTransactionsParentheticalDisclosuresAbstract" xlink:title="StockTransactionsParentheticalDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl" xml:lang="en-US" id="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl">Supplemental Share Information:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockTransactionsParentheticalDisclosuresAbstract" xlink:to="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl" xlink:title="label: StockTransactionsParentheticalDisclosuresAbstract to us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl1" xml:lang="en-US" id="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl1">Stock Transactions, Parenthetical Disclosure [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockTransactionsParentheticalDisclosuresAbstract" xlink:to="us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl1" xlink:title="label: StockTransactionsParentheticalDisclosuresAbstract to us-gaap_StockTransactionsParentheticalDisclosuresAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="EarningsPerShareTextBlock" xlink:title="EarningsPerShareTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareTextBlock_lbl" xml:lang="en-US" id="us-gaap_EarningsPerShareTextBlock_lbl">Earnings per share</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl" xlink:title="label: EarningsPerShareTextBlock to us-gaap_EarningsPerShareTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareTextBlock_lbl1" xml:lang="en-US" id="us-gaap_EarningsPerShareTextBlock_lbl1">Earnings Per Share [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl1" xlink:title="label: EarningsPerShareTextBlock to us-gaap_EarningsPerShareTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl">Shares [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" xlink:title="label: WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract to us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl1">Weighted Average Number of Shares Outstanding Reconciliation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl1" xlink:title="label: WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract to us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NontradeReceivablesCurrent" xlink:label="NontradeReceivablesCurrent" xlink:title="NontradeReceivablesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NontradeReceivablesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NontradeReceivablesCurrent_lbl" xml:lang="en-US" id="us-gaap_NontradeReceivablesCurrent_lbl">Employee retention credit receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NontradeReceivablesCurrent" xlink:to="us-gaap_NontradeReceivablesCurrent_lbl" xlink:title="label: NontradeReceivablesCurrent to us-gaap_NontradeReceivablesCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NontradeReceivablesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NontradeReceivablesCurrent_lbl1" xml:lang="en-US" id="us-gaap_NontradeReceivablesCurrent_lbl1">Nontrade Receivables, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NontradeReceivablesCurrent" xlink:to="us-gaap_NontradeReceivablesCurrent_lbl1" xlink:title="label: NontradeReceivablesCurrent to us-gaap_NontradeReceivablesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LeasesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LeasesAbstract_lbl" xml:lang="en-US" id="us-gaap_LeasesAbstract_lbl">Leases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LeasesAbstract" xlink:to="us-gaap_LeasesAbstract_lbl" xlink:title="label: LeasesAbstract to us-gaap_LeasesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="CommitmentsAndContingencies" xlink:title="CommitmentsAndContingencies" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingencies_lbl" xml:lang="en-US" id="us-gaap_CommitmentsAndContingencies_lbl">Commitments and contingencies (see Notes 5 and 7)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl" xlink:title="label: CommitmentsAndContingencies to us-gaap_CommitmentsAndContingencies_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xml:lang="en-US" id="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl">Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:title="label: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="AccountsPayableCurrent" xlink:title="AccountsPayableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsPayableCurrent_lbl" xml:lang="en-US" id="us-gaap_AccountsPayableCurrent_lbl">Accounts payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl" xlink:title="label: AccountsPayableCurrent to us-gaap_AccountsPayableCurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedLiabilitiesCurrent_lbl" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesCurrent_lbl">Accrued liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl" xlink:title="label: AccruedLiabilitiesCurrent to us-gaap_AccruedLiabilitiesCurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xml:lang="en-US" id="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl">Share-based compensation expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" xlink:title="label: AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue to us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xml:lang="en-US" id="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xlink:title="label: AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue to us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl">Income (loss) before income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:title="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl">Accrued liabilities and other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xlink:title="label: IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities to us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:title="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xml:lang="en-US" id="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl">Withholding taxes paid on stock issuances</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:title="label: PaymentsRelatedToTaxWithholdingForShareBasedCompensation to us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl1" xml:lang="en-US" id="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl1">Payment, Tax Withholding, Share-Based Payment Arrangement</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl1" xlink:title="label: PaymentsRelatedToTaxWithholdingForShareBasedCompensation to us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:title="SharesPaidForTaxWithholdingForShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xml:lang="en-US" id="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl">Relinquishment of stock awards to pay withholding taxes (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:title="label: SharesPaidForTaxWithholdingForShareBasedCompensation to us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl1" xml:lang="en-US" id="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl1">Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl1" xlink:title="label: SharesPaidForTaxWithholdingForShareBasedCompensation to us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" xml:lang="en-US" id="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl">Significant accounting policies</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" xlink:title="label: BasisOfPresentationAndSignificantAccountingPoliciesTextBlock to us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:title="BusinessDescriptionAndBasisOfPresentationTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xml:lang="en-US" id="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl">Basis of Presentation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" xlink:title="label: BusinessDescriptionAndBasisOfPresentationTextBlock to us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl1" xml:lang="en-US" id="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl1">Business Description and Basis of Presentation [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:to="us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl1" xlink:title="label: BusinessDescriptionAndBasisOfPresentationTextBlock to us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="InterestIncomeExpenseNonoperatingNet" xlink:title="InterestIncomeExpenseNonoperatingNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl" xml:lang="en-US" id="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl">Interest, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestIncomeExpenseNonoperatingNet" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl" xlink:title="label: InterestIncomeExpenseNonoperatingNet to us-gaap_InterestIncomeExpenseNonoperatingNet_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl1" xml:lang="en-US" id="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl1">Interest Income (Expense), Nonoperating, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestIncomeExpenseNonoperatingNet" xlink:to="us-gaap_InterestIncomeExpenseNonoperatingNet_lbl1" xlink:title="label: InterestIncomeExpenseNonoperatingNet to us-gaap_InterestIncomeExpenseNonoperatingNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xml:lang="en-US" id="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl">Basis of Presentation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:title="label: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="ScheduleOfInventoryCurrentTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xml:lang="en-US" id="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl">Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:title="label: ScheduleOfInventoryCurrentTableTextBlock to us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xlink:title="label: ScheduleOfInventoryCurrentTableTextBlock to us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxDisclosureAbstract_lbl" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureAbstract_lbl">Income taxes [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:title="label: IncomeTaxDisclosureAbstract to us-gaap_IncomeTaxDisclosureAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="SubsequentEventsTextBlock" xlink:title="SubsequentEventsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SubsequentEventsTextBlock_lbl" xml:lang="en-US" id="us-gaap_SubsequentEventsTextBlock_lbl">Subsequent events</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl" xlink:title="label: SubsequentEventsTextBlock to us-gaap_SubsequentEventsTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SubsequentEventsTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SubsequentEventsTextBlock_lbl1" xml:lang="en-US" id="us-gaap_SubsequentEventsTextBlock_lbl1">Subsequent Events [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SubsequentEventsTextBlock" xlink:to="us-gaap_SubsequentEventsTextBlock_lbl1" xlink:title="label: SubsequentEventsTextBlock to us-gaap_SubsequentEventsTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryDisclosureAbstract_lbl" xml:lang="en-US" id="us-gaap_InventoryDisclosureAbstract_lbl">Inventories [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_lbl" xlink:title="label: InventoryDisclosureAbstract to us-gaap_InventoryDisclosureAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtDisclosureAbstract_lbl" xml:lang="en-US" id="us-gaap_DebtDisclosureAbstract_lbl">Debt [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl" xlink:title="label: DebtDisclosureAbstract to us-gaap_DebtDisclosureAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates" xlink:label="UseOfEstimates" xlink:title="UseOfEstimates" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UseOfEstimates_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_UseOfEstimates_lbl" xml:lang="en-US" id="us-gaap_UseOfEstimates_lbl">Use of Assumptions and Estimates</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl" xlink:title="label: UseOfEstimates to us-gaap_UseOfEstimates_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_UseOfEstimates_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_UseOfEstimates_lbl1" xml:lang="en-US" id="us-gaap_UseOfEstimates_lbl1">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl1" xlink:title="label: UseOfEstimates to us-gaap_UseOfEstimates_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:title="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl">Percentage fee on unused borrowings</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" xlink:title="label: LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage to us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl1" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl1">Line of Credit Facility, Unused Capacity, Commitment Fee Percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl1" xlink:title="label: LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage to us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountingPoliciesAbstract_lbl" xml:lang="en-US" id="us-gaap_AccountingPoliciesAbstract_lbl">Significant accounting policies [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl" xlink:title="label: AccountingPoliciesAbstract to us-gaap_AccountingPoliciesAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="SubsequentEventsAbstract" xlink:title="SubsequentEventsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SubsequentEventsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SubsequentEventsAbstract_lbl" xml:lang="en-US" id="us-gaap_SubsequentEventsAbstract_lbl">Subsequent events [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SubsequentEventsAbstract" xlink:to="us-gaap_SubsequentEventsAbstract_lbl" xlink:title="label: SubsequentEventsAbstract to us-gaap_SubsequentEventsAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:label="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:title="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl" xml:lang="en-US" id="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl">Relinquishment of stock awards to pay for withholding taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl" xlink:title="label: StockGrantedDuringPeriodValueSharebasedCompensationForfeited to us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl1" xml:lang="en-US" id="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl1">Shares Granted, Value, Share-Based Payment Arrangement, Forfeited</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:to="us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl1" xlink:title="label: StockGrantedDuringPeriodValueSharebasedCompensationForfeited to us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="NoncashInvestingAndFinancingItemsAbstract" xlink:title="NoncashInvestingAndFinancingItemsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xml:lang="en-US" id="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl">Supplemental schedule of non-cash investing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" xlink:title="label: NoncashInvestingAndFinancingItemsAbstract to us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl1" xml:lang="en-US" id="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl1">Noncash Investing and Financing Items [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl1" xlink:title="label: NoncashInvestingAndFinancingItemsAbstract to us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xml:lang="en-US" id="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl">Earnings per Share</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:title="label: ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock to us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" xlink:title="label: ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock to us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="BasisOfAccountingPolicyPolicyTextBlock" xlink:title="BasisOfAccountingPolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xml:lang="en-US" id="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl">Basis of Accounting</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" xlink:title="label: BasisOfAccountingPolicyPolicyTextBlock to us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl1">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl1" xlink:title="label: BasisOfAccountingPolicyPolicyTextBlock to us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="PriorPeriodReclassificationAdjustmentDescription" xlink:title="PriorPeriodReclassificationAdjustmentDescription" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xml:lang="en-US" id="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl">Reclassifications</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PriorPeriodReclassificationAdjustmentDescription" xlink:to="us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" xlink:title="label: PriorPeriodReclassificationAdjustmentDescription to us-gaap_PriorPeriodReclassificationAdjustmentDescription_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl">Foreign currency translation adjustment, net of tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" xlink:title="label: OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax to us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl1" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl1">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl1" xlink:title="label: OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax to us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xml:lang="en-US" id="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl">Basis spread on variable rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xlink:title="label: DebtInstrumentBasisSpreadOnVariableRate1 to us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis" xlink:label="VariableRateAxis" xlink:title="VariableRateAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableRateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableRateAxis_lbl" xml:lang="en-US" id="us-gaap_VariableRateAxis_lbl">Variable Rate [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableRateAxis" xlink:to="us-gaap_VariableRateAxis_lbl" xlink:title="label: VariableRateAxis to us-gaap_VariableRateAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain" xlink:label="VariableRateDomain" xlink:title="VariableRateDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VariableRateDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VariableRateDomain_lbl" xml:lang="en-US" id="us-gaap_VariableRateDomain_lbl">Variable Rate [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VariableRateDomain" xlink:to="us-gaap_VariableRateDomain_lbl" xlink:title="label: VariableRateDomain to us-gaap_VariableRateDomain_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrimeRateMember" xlink:label="PrimeRateMember" xlink:title="PrimeRateMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PrimeRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PrimeRateMember_lbl" xml:lang="en-US" id="us-gaap_PrimeRateMember_lbl">Prime Rate [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrimeRateMember" xlink:to="us-gaap_PrimeRateMember_lbl" xlink:title="label: PrimeRateMember to us-gaap_PrimeRateMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="FederalFundsEffectiveSwapRateMember" xlink:title="FederalFundsEffectiveSwapRateMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" xml:lang="en-US" id="us-gaap_FederalFundsEffectiveSwapRateMember_lbl">Federal Funds Rate [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FederalFundsEffectiveSwapRateMember" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember_lbl" xlink:title="label: FederalFundsEffectiveSwapRateMember to us-gaap_FederalFundsEffectiveSwapRateMember_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FederalFundsEffectiveSwapRateMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FederalFundsEffectiveSwapRateMember_lbl1" xml:lang="en-US" id="us-gaap_FederalFundsEffectiveSwapRateMember_lbl1">Fed Funds Effective Rate Overnight Index Swap Rate [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FederalFundsEffectiveSwapRateMember" xlink:to="us-gaap_FederalFundsEffectiveSwapRateMember_lbl1" xlink:title="label: FederalFundsEffectiveSwapRateMember to us-gaap_FederalFundsEffectiveSwapRateMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxAssetsNet_lbl">Deferred tax assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl" xlink:title="label: DeferredIncomeTaxAssetsNet to us-gaap_DeferredIncomeTaxAssetsNet_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxAssetsNet_lbl1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxAssetsNet_lbl1">Deferred Income Tax Assets, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl1" xlink:title="label: DeferredIncomeTaxAssetsNet to us-gaap_DeferredIncomeTaxAssetsNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockCommonMember_lbl" xml:lang="en-US" id="us-gaap_TreasuryStockCommonMember_lbl">Treasury Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl" xlink:title="label: TreasuryStockCommonMember to us-gaap_TreasuryStockCommonMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="TreasuryStockCommonShares" xlink:title="TreasuryStockCommonShares" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockCommonShares_lbl" xml:lang="en-US" id="us-gaap_TreasuryStockCommonShares_lbl">Treasury stock (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl" xlink:title="label: TreasuryStockCommonShares to us-gaap_TreasuryStockCommonShares_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueAbstract_lbl" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueAbstract_lbl">Disaggregation of revenue [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="us-gaap_DisaggregationOfRevenueAbstract_lbl" xlink:title="label: DisaggregationOfRevenueAbstract to us-gaap_DisaggregationOfRevenueAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="DisaggregationOfRevenueTableTextBlock" xlink:title="DisaggregationOfRevenueTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl">Disaggregation of Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" xlink:title="label: DisaggregationOfRevenueTableTextBlock to us-gaap_DisaggregationOfRevenueTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl1">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl1" xlink:title="label: DisaggregationOfRevenueTableTextBlock to us-gaap_DisaggregationOfRevenueTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueTable_lbl" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTable_lbl">Disaggregation of Revenue [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable_lbl" xlink:title="label: DisaggregationOfRevenueTable to us-gaap_DisaggregationOfRevenueTable_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueLineItems_lbl" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueLineItems_lbl">Disaggregation of Revenue [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems_lbl" xlink:title="label: DisaggregationOfRevenueLineItems to us-gaap_DisaggregationOfRevenueLineItems_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="RevenueRemainingPerformanceObligation" xlink:title="RevenueRemainingPerformanceObligation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenueRemainingPerformanceObligation_lbl" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligation_lbl">Remaining performance obligations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_lbl" xlink:title="label: RevenueRemainingPerformanceObligation to us-gaap_RevenueRemainingPerformanceObligation_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRemainingPerformanceObligation_lbl1" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligation_lbl1">Revenue, Remaining Performance Obligation, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligation" xlink:to="us-gaap_RevenueRemainingPerformanceObligation_lbl1" xlink:title="label: RevenueRemainingPerformanceObligation to us-gaap_RevenueRemainingPerformanceObligation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="ContractWithCustomerAssetNetCurrent" xlink:title="ContractWithCustomerAssetNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNetCurrent_lbl">Unbilled receivables, current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl" xlink:title="label: ContractWithCustomerAssetNetCurrent to us-gaap_ContractWithCustomerAssetNetCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1">Contract with Customer, Asset, after Allowance for Credit Loss, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNetCurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" xlink:title="label: ContractWithCustomerAssetNetCurrent to us-gaap_ContractWithCustomerAssetNetCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="ContractWithCustomerAssetNetNoncurrent" xlink:title="ContractWithCustomerAssetNetNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl">Unbilled receivables, net of current portion</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNetNoncurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl" xlink:title="label: ContractWithCustomerAssetNetNoncurrent to us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl1">Contract with Customer, Asset, after Allowance for Credit Loss, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetNetNoncurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl1" xlink:title="label: ContractWithCustomerAssetNetNoncurrent to us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerAbstract_lbl">Revenue [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:title="label: RevenueFromContractWithCustomerAbstract to us-gaap_RevenueFromContractWithCustomerAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="RevenueFromContractWithCustomerTextBlock" xlink:title="RevenueFromContractWithCustomerTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl">Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:title="label: RevenueFromContractWithCustomerTextBlock to us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1">Revenue from Contract with Customer [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" xlink:title="label: RevenueFromContractWithCustomerTextBlock to us-gaap_RevenueFromContractWithCustomerTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenuePerformanceObligationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenuePerformanceObligationAbstract_lbl" xml:lang="en-US" id="us-gaap_RevenuePerformanceObligationAbstract_lbl">Remaining performance obligations [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenuePerformanceObligationAbstract" xlink:to="us-gaap_RevenuePerformanceObligationAbstract_lbl" xlink:title="label: RevenuePerformanceObligationAbstract to us-gaap_RevenuePerformanceObligationAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenuePerformanceObligationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenuePerformanceObligationAbstract_lbl1" xml:lang="en-US" id="us-gaap_RevenuePerformanceObligationAbstract_lbl1">Revenue, Performance Obligation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenuePerformanceObligationAbstract" xlink:to="us-gaap_RevenuePerformanceObligationAbstract_lbl1" xlink:title="label: RevenuePerformanceObligationAbstract to us-gaap_RevenuePerformanceObligationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl" xlink:title="label: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable to us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl" xlink:title="label: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:label="CashFlowOperatingActivitiesLesseeAbstract" xlink:title="CashFlowOperatingActivitiesLesseeAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl" xml:lang="en-US" id="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl">Cash Flows Related to Operating Leases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl" xlink:title="label: CashFlowOperatingActivitiesLesseeAbstract to us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl1" xml:lang="en-US" id="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl1">Cash Flow, Operating Activities, Lessee [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl1" xlink:title="label: CashFlowOperatingActivitiesLesseeAbstract to us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityAbstract" xlink:label="ContractWithCustomerLiabilityAbstract" xlink:title="ContractWithCustomerLiabilityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerLiabilityAbstract_lbl" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityAbstract_lbl">Contract liabilities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityAbstract_lbl" xlink:title="label: ContractWithCustomerLiabilityAbstract to us-gaap_ContractWithCustomerLiabilityAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityAbstract_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityAbstract_lbl1">Contract with Customer, Liability [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="us-gaap_ContractWithCustomerLiabilityAbstract_lbl1" xlink:title="label: ContractWithCustomerLiabilityAbstract to us-gaap_ContractWithCustomerLiabilityAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityCurrent_lbl">Deferred revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl" xlink:title="label: ContractWithCustomerLiabilityCurrent to us-gaap_ContractWithCustomerLiabilityCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1">Deferred revenue, current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" xlink:title="label: ContractWithCustomerLiabilityCurrent to us-gaap_ContractWithCustomerLiabilityCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl">Deferred revenue, net of current portion</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl" xlink:title="label: ContractWithCustomerLiabilityNoncurrent to us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1">Deferred revenue, net of current portion</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" xlink:title="label: ContractWithCustomerLiabilityNoncurrent to us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAsset_lbl">Right-of-use asset, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:title="label: OperatingLeaseRightOfUseAsset to us-gaap_OperatingLeaseRightOfUseAsset_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseRightOfUseAsset_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAsset_lbl1">Operating Lease, Right-of-Use Asset</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl1" xlink:title="label: OperatingLeaseRightOfUseAsset to us-gaap_OperatingLeaseRightOfUseAsset_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl">Maturity of Operating Lease Liabilities [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" xlink:title="label: OperatingLeaseLiabilitiesPaymentsDueAbstract to us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1">Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" xlink:title="label: OperatingLeaseLiabilitiesPaymentsDueAbstract to us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl">Net sales</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:title="label: RevenueFromContractWithCustomerExcludingAssessedTax to us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl1" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl1">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl1" xlink:title="label: RevenueFromContractWithCustomerExcludingAssessedTax to us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink:label="LesseeOperatingLeaseDescriptionAbstract" xlink:title="LesseeOperatingLeaseDescriptionAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl">Operating Lease Weighted Average Remaining Lease Term and Discount Rate [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseDescriptionAbstract" xlink:to="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl" xlink:title="label: LesseeOperatingLeaseDescriptionAbstract to us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl1">Lessee, Operating Lease, Description [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseDescriptionAbstract" xlink:to="us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl1" xlink:title="label: LesseeOperatingLeaseDescriptionAbstract to us-gaap_LesseeOperatingLeaseDescriptionAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US" id="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl">Effect of exchange rate changes on cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:title="label: EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl">Increase (decrease) in cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl">Cash and cash equivalents, beginning of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1">Cash and cash equivalents, end of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" xlink:title="label: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis to us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments" xlink:label="OperatingLeasePayments" xlink:title="OperatingLeasePayments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeasePayments_lbl" xml:lang="en-US" id="us-gaap_OperatingLeasePayments_lbl">Operating cash outflows from leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl" xlink:title="label: OperatingLeasePayments to us-gaap_OperatingLeasePayments_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeasePayments_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeasePayments_lbl1">Operating Lease, Payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl1" xlink:title="label: OperatingLeasePayments to us-gaap_OperatingLeasePayments_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl">Weighted average discount rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xlink:title="label: OperatingLeaseWeightedAverageDiscountRatePercent to us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" xlink:title="label: OperatingLeaseWeightedAverageDiscountRatePercent to us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl">Total undiscounted lease payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDue to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDue to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl">2024</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl">2026</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearThree to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl">2025</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsDueYearTwo to us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:title="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl">2023</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear to us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:title="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl">Maturity of Operating Lease Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityMaturityTableTextBlock to us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl1">Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl1" xlink:title="label: LesseeOperatingLeaseLiabilityMaturityTableTextBlock to us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="OperatingLeaseExpense" xlink:title="OperatingLeaseExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseExpense_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseExpense_lbl">Operating lease expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense_lbl" xlink:title="label: OperatingLeaseExpense to us-gaap_OperatingLeaseExpense_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseExpense_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseExpense_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseExpense_lbl1">Operating Lease, Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense_lbl1" xlink:title="label: OperatingLeaseExpense to us-gaap_OperatingLeaseExpense_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiability_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseLiability_lbl">Total lease liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl" xlink:title="label: OperatingLeaseLiability to us-gaap_OperatingLeaseLiability_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiability_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiability_lbl1">Operating Lease, Liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl1" xlink:title="label: OperatingLeaseLiability to us-gaap_OperatingLeaseLiability_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityCurrent_lbl">Lease liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:title="label: OperatingLeaseLiabilityCurrent to us-gaap_OperatingLeaseLiabilityCurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl">Less imputed interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:title="label: LesseeOperatingLeaseLiabilityUndiscountedExcessAmount to us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl">Lease liability, net of current portion</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:title="label: OperatingLeaseLiabilityNoncurrent to us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1">Operating Lease, Liability, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" xlink:title="label: OperatingLeaseLiabilityNoncurrent to us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="ContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl">Net Contract Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" xlink:title="label: ContractWithCustomerAssetAndLiabilityTableTextBlock to us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl1">Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl1" xlink:title="label: ContractWithCustomerAssetAndLiabilityTableTextBlock to us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="LesseeOperatingLeasesTextBlock" xlink:title="LesseeOperatingLeasesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xml:lang="en-US" id="us-gaap_LesseeOperatingLeasesTextBlock_lbl">Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:title="label: LesseeOperatingLeasesTextBlock to us-gaap_LesseeOperatingLeasesTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeasesTextBlock_lbl1" xml:lang="en-US" id="us-gaap_LesseeOperatingLeasesTextBlock_lbl1">Lessee, Operating Leases [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl1" xlink:title="label: LesseeOperatingLeasesTextBlock to us-gaap_LesseeOperatingLeasesTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl">Weighted average remaining lease term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xlink:title="label: OperatingLeaseWeightedAverageRemainingLeaseTerm1 to us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl1">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl1" xlink:title="label: OperatingLeaseWeightedAverageRemainingLeaseTerm1 to us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl">Expected timing of satisfaction, period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" xlink:title="label: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 to us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl1" xml:lang="en-US" id="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl1">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl1" xlink:title="label: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 to us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:label="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock_lbl" xml:lang="en-US" id="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock_lbl">Credit Losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CreditLossFinancialInstrumentPolicyTextBlock" xlink:to="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock_lbl" xlink:title="label: CreditLossFinancialInstrumentPolicyTextBlock to us-gaap_CreditLossFinancialInstrumentPolicyTextBlock_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:label xlink:type="resource" xlink:label="srt_SegmentGeographicalDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_SegmentGeographicalDomain_lbl" xml:lang="en-US" id="srt_SegmentGeographicalDomain_lbl">Geographical [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain_lbl" xlink:title="label: SegmentGeographicalDomain to srt_SegmentGeographicalDomain_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:label xlink:type="resource" xlink:label="srt_StatementGeographicalAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_StatementGeographicalAxis_lbl" xml:lang="en-US" id="srt_StatementGeographicalAxis_lbl">Geographical [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl" xlink:title="label: StatementGeographicalAxis to srt_StatementGeographicalAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:label xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_RangeAxis_lbl" xml:lang="en-US" id="srt_RangeAxis_lbl">Statistical Measurement [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RangeAxis" xlink:to="srt_RangeAxis_lbl" xlink:title="label: RangeAxis to srt_RangeAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:label xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_RangeMember_lbl" xml:lang="en-US" id="srt_RangeMember_lbl">Statistical Measurement [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RangeMember" xlink:to="srt_RangeMember_lbl" xlink:title="label: RangeMember to srt_RangeMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:label xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_MinimumMember_lbl" xml:lang="en-US" id="srt_MinimumMember_lbl">Minimum [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumMember" xlink:to="srt_MinimumMember_lbl" xlink:title="label: MinimumMember to srt_MinimumMember_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:label xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ProductsAndServicesDomain_lbl" xml:lang="en-US" id="srt_ProductsAndServicesDomain_lbl">Product and Service [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain_lbl" xlink:title="label: ProductsAndServicesDomain to srt_ProductsAndServicesDomain_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:label xlink:type="resource" xlink:label="srt_ProductOrServiceAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ProductOrServiceAxis_lbl" xml:lang="en-US" id="srt_ProductOrServiceAxis_lbl">Product and Service [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl" xlink:title="label: ProductOrServiceAxis to srt_ProductOrServiceAxis_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:label xlink:type="resource" xlink:label="country_US_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_US_lbl" xml:lang="en-US" id="country_US_lbl">United States [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="US" xlink:to="country_US_lbl" xlink:title="label: US to country_US_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:label xlink:type="resource" xlink:label="dei_CoverAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CoverAbstract_lbl" xml:lang="en-US" id="dei_CoverAbstract_lbl">Cover [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:title="label: CoverAbstract to dei_CoverAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentType_lbl" xml:lang="en-US" id="dei_DocumentType_lbl">Document Type</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentType" xlink:to="dei_DocumentType_lbl" xlink:title="label: DocumentType to dei_DocumentType_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="DocumentQuarterlyReport" xlink:title="DocumentQuarterlyReport" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentQuarterlyReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US" id="dei_DocumentQuarterlyReport_lbl">Document Quarterly Report</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:title="label: DocumentQuarterlyReport to dei_DocumentQuarterlyReport_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="DocumentTransitionReport" xlink:title="DocumentTransitionReport" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentTransitionReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentTransitionReport_lbl" xml:lang="en-US" id="dei_DocumentTransitionReport_lbl">Document Transition Report</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:title="label: DocumentTransitionReport to dei_DocumentTransitionReport_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="EntityInteractiveDataCurrent" xlink:title="EntityInteractiveDataCurrent" />
    <link:label xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US" id="dei_EntityInteractiveDataCurrent_lbl">Entity Interactive Data Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:title="label: EntityInteractiveDataCurrent to dei_EntityInteractiveDataCurrent_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:label xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AmendmentFlag_lbl" xml:lang="en-US" id="dei_AmendmentFlag_lbl">Amendment Flag</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:title="label: AmendmentFlag to dei_AmendmentFlag_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US" id="dei_DocumentFiscalYearFocus_lbl">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:title="label: DocumentFiscalYearFocus to dei_DocumentFiscalYearFocus_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US" id="dei_DocumentFiscalPeriodFocus_lbl">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:title="label: DocumentFiscalPeriodFocus to dei_DocumentFiscalPeriodFocus_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US" id="dei_DocumentPeriodEndDate_lbl">Document Period End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:title="label: DocumentPeriodEndDate to dei_DocumentPeriodEndDate_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:label xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityRegistrantName_lbl" xml:lang="en-US" id="dei_EntityRegistrantName_lbl">Entity Registrant Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:title="label: EntityRegistrantName to dei_EntityRegistrantName_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCentralIndexKey_lbl" xml:lang="en-US" id="dei_EntityCentralIndexKey_lbl">Entity Central Index Key</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:title="label: EntityCentralIndexKey to dei_EntityCentralIndexKey_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFileNumber_lbl" xml:lang="en-US" id="dei_EntityFileNumber_lbl">Entity File Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:title="label: EntityFileNumber to dei_EntityFileNumber_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US" id="dei_EntityTaxIdentificationNumber_lbl">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:title="label: EntityTaxIdentificationNumber to dei_EntityTaxIdentificationNumber_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US" id="dei_EntityIncorporationStateCountryCode_lbl">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:title="label: EntityIncorporationStateCountryCode to dei_EntityIncorporationStateCountryCode_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="CurrentFiscalYearEndDate" xlink:title="CurrentFiscalYearEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US" id="dei_CurrentFiscalYearEndDate_lbl">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:title="label: CurrentFiscalYearEndDate to dei_CurrentFiscalYearEndDate_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="EntityCurrentReportingStatus" xlink:title="EntityCurrentReportingStatus" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US" id="dei_EntityCurrentReportingStatus_lbl">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:title="label: EntityCurrentReportingStatus to dei_EntityCurrentReportingStatus_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="EntityShellCompany" xlink:title="EntityShellCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityShellCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityShellCompany_lbl" xml:lang="en-US" id="dei_EntityShellCompany_lbl">Entity Shell Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:title="label: EntityShellCompany to dei_EntityShellCompany_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="EntityFilerCategory" xlink:title="EntityFilerCategory" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFilerCategory_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFilerCategory_lbl" xml:lang="en-US" id="dei_EntityFilerCategory_lbl">Entity Filer Category</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:title="label: EntityFilerCategory to dei_EntityFilerCategory_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="EntitySmallBusiness" xlink:title="EntitySmallBusiness" />
    <link:label xlink:type="resource" xlink:label="dei_EntitySmallBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntitySmallBusiness_lbl" xml:lang="en-US" id="dei_EntitySmallBusiness_lbl">Entity Small Business</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:title="label: EntitySmallBusiness to dei_EntitySmallBusiness_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US" id="dei_EntityEmergingGrowthCompany_lbl">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:title="label: EntityEmergingGrowthCompany to dei_EntityEmergingGrowthCompany_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US" id="dei_EntityAddressAddressLine1_lbl">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:title="label: EntityAddressAddressLine1 to dei_EntityAddressAddressLine1_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="EntityAddressAddressLine2" xlink:title="EntityAddressAddressLine2" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine2_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US" id="dei_EntityAddressAddressLine2_lbl">Entity Address, Address Line Two</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:title="label: EntityAddressAddressLine2 to dei_EntityAddressAddressLine2_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US" id="dei_EntityAddressCityOrTown_lbl">Entity Address, City or Town</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:title="label: EntityAddressCityOrTown to dei_EntityAddressCityOrTown_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US" id="dei_EntityAddressStateOrProvince_lbl">Entity Address, State or Province</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:title="label: EntityAddressStateOrProvince to dei_EntityAddressStateOrProvince_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US" id="dei_EntityAddressPostalZipCode_lbl">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:title="label: EntityAddressPostalZipCode to dei_EntityAddressPostalZipCode_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:label xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CityAreaCode_lbl" xml:lang="en-US" id="dei_CityAreaCode_lbl">City Area Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:title="label: CityAreaCode to dei_CityAreaCode_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:label xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_LocalPhoneNumber_lbl" xml:lang="en-US" id="dei_LocalPhoneNumber_lbl">Local Phone Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:title="label: LocalPhoneNumber to dei_LocalPhoneNumber_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:label xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_Security12bTitle_lbl" xml:lang="en-US" id="dei_Security12bTitle_lbl">Title of 12(b) Security</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:title="label: Security12bTitle to dei_Security12bTitle_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:label xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_TradingSymbol_lbl" xml:lang="en-US" id="dei_TradingSymbol_lbl">Trading Symbol</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:title="label: TradingSymbol to dei_TradingSymbol_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:label xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_SecurityExchangeName_lbl" xml:lang="en-US" id="dei_SecurityExchangeName_lbl">Security Exchange Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:title="label: SecurityExchangeName to dei_SecurityExchangeName_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="EntityCommonStockSharesOutstanding" xlink:title="EntityCommonStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US" id="dei_EntityCommonStockSharesOutstanding_lbl">Entity Common Stock, Shares Outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:title="label: EntityCommonStockSharesOutstanding to dei_EntityCommonStockSharesOutstanding_lbl" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:label="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:title="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl" xml:lang="en-US" id="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl">The minimum sum of (1) excess availability under the Siena Credit Facility (as amended by the Credit Facility Amendment) and (2) unrestricted cash required under a new "springing" deposit account control agreement, permitting the Company to direct the use of funds in its deposit account.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:to="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl" xlink:title="label: DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash to tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl1" xml:lang="en-US" id="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl1">Debt Instrument, Minimum excess availability and unrestricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:to="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl1" xlink:title="label: DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash to tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl2" xml:lang="en-US" id="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl2">Minimum excess availability and unrestricted cash required</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:to="tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl2" xlink:title="label: DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash to tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:label="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="RevolvingCreditFacilitySienaLendingGroupLlcMember" />
    <link:label xlink:type="resource" xlink:label="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl" xml:lang="en-US" id="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl">Arrangement with Siena Lending Group LLC that provides a revolving credit line, subject to a borrowing base.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:to="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl" xlink:title="label: RevolvingCreditFacilitySienaLendingGroupLlcMember to tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl1" xml:lang="en-US" id="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl1">Revolving Credit Facility, Siena Lending Group Llc [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:to="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl1" xlink:title="label: RevolvingCreditFacilitySienaLendingGroupLlcMember to tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl2" xml:lang="en-US" id="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl2">Sienna Credit Facility [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:to="tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl2" xlink:title="label: RevolvingCreditFacilitySienaLendingGroupLlcMember to tact_RevolvingCreditFacilitySienaLendingGroupLlcMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventory" xlink:label="DebtInstrumentFinancialCovenantEligibleInventory" xlink:title="DebtInstrumentFinancialCovenantEligibleInventory" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl">The minimum value of eligible raw material and finished goods inventory included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventory" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventory to tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl1" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl1">Debt Instrument, Financial Covenant, Eligible Inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventory" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl1" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventory to tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl2" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl2">Eligible inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventory" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl2" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventory to tact_DebtInstrumentFinancialCovenantEligibleInventory_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:label="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:title="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl">The percentage of eligible raw material included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage to tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl1" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl1">Debt Instrument, Financial Covenant, Eligible Inventory, Raw Material, Percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl1" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage to tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl2" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl2">Percentage of eligible raw material</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl2" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage to tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:label="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:title="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl">The percentage of eligible finished goods inventory included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage to tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl1" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl1">Debt Instrument, Financial Covenant, Eligible Inventory, Finished Goods Inventory, Percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl1" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage to tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl2" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl2">Percentage of eligible finished goods inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl2" xlink:title="label: DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage to tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:label="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:title="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl">The percentage of eligible accounts receivable included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl" xlink:title="label: DebtInstrumentFinancialCovenantEligibleAccountsReceivable to tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl1" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl1">Debt Instrument, Financial Covenant, Eligible Accounts Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl1" xlink:title="label: DebtInstrumentFinancialCovenantEligibleAccountsReceivable to tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl2" xml:lang="en-US" id="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl2">Percentage of eligible accounts receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:to="tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl2" xlink:title="label: DebtInstrumentFinancialCovenantEligibleAccountsReceivable to tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:label="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:title="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl" xml:lang="en-US" id="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl">The minimum principal amount, whether or not such amount of loans is actually outstanding, on which interest is paid if the Company does not have the ability to direct the use of funds in the deposit account under the Amended Fee Letter.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:to="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl" xlink:title="label: DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid to tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl1" xml:lang="en-US" id="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl1">Debt Instrument, Minimum principal amount on which interest is paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:to="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl1" xlink:title="label: DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid to tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl2" xml:lang="en-US" id="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl2">Minimum principal amount on which interest is paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:to="tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl2" xlink:title="label: DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid to tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:label="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:title="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl" xml:lang="en-US" id="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl">The minimum principal amount of outstanding borrowings that must be maintained in order to retain the ability to direct the use of funds in the deposit account under the Amended Fee Letter.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:to="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl" xlink:title="label: DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount to tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl1" xml:lang="en-US" id="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl1">Debt Instrument, Minimum principal amount to be maintained to direct use of funds in deposit account</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:to="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl1" xlink:title="label: DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount to tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl2" xml:lang="en-US" id="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl2">Minimum principal amount to be maintained to direct use of funds in deposit account</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:to="tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl2" xlink:title="label: DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount to tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:label="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:title="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl" xml:lang="en-US" id="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl">The period of time the minimum sum of (1) excess availability under the Siena Credit Facility (as amended by the Credit Facility Amendment) and (2) unrestricted cash must be maintained, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:to="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl" xlink:title="label: DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash to tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl1" xml:lang="en-US" id="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl1">Debt Instrument, Period to maintain excess availability and unrestricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:to="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl1" xlink:title="label: DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash to tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl2" xml:lang="en-US" id="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl2">Number of days to maintain excess availability and unrestricted cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:to="tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl2" xlink:title="label: DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash to tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_InternationalMember" xlink:label="InternationalMember" xlink:title="InternationalMember" />
    <link:label xlink:type="resource" xlink:label="tact_InternationalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_InternationalMember_lbl" xml:lang="en-US" id="tact_InternationalMember_lbl">Other countries outside of the United States.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InternationalMember" xlink:to="tact_InternationalMember_lbl" xlink:title="label: InternationalMember to tact_InternationalMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_InternationalMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_InternationalMember_lbl1" xml:lang="en-US" id="tact_InternationalMember_lbl1">International [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InternationalMember" xlink:to="tact_InternationalMember_lbl1" xlink:title="label: InternationalMember to tact_InternationalMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_FoodServiceTechnologyMember" xlink:label="FoodServiceTechnologyMember" xlink:title="FoodServiceTechnologyMember" />
    <link:label xlink:type="resource" xlink:label="tact_FoodServiceTechnologyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_FoodServiceTechnologyMember_lbl" xml:lang="en-US" id="tact_FoodServiceTechnologyMember_lbl">Revenue from sales of the BOHA! ecosystem, which combines the latest generation terminal, cloud-based software applications and related hardware into a unique solution to automate operations with food production in the back-of-house operations in restaurants and food service operations.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FoodServiceTechnologyMember" xlink:to="tact_FoodServiceTechnologyMember_lbl" xlink:title="label: FoodServiceTechnologyMember to tact_FoodServiceTechnologyMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_FoodServiceTechnologyMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_FoodServiceTechnologyMember_lbl1" xml:lang="en-US" id="tact_FoodServiceTechnologyMember_lbl1">Food Service Technology [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FoodServiceTechnologyMember" xlink:to="tact_FoodServiceTechnologyMember_lbl1" xlink:title="label: FoodServiceTechnologyMember to tact_FoodServiceTechnologyMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_FoodServiceTechnologyMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_FoodServiceTechnologyMember_lbl2" xml:lang="en-US" id="tact_FoodServiceTechnologyMember_lbl2">Food Service Technology [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FoodServiceTechnologyMember" xlink:to="tact_FoodServiceTechnologyMember_lbl2" xlink:title="label: FoodServiceTechnologyMember to tact_FoodServiceTechnologyMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_PosAutomationAndBankingMember" xlink:label="PosAutomationAndBankingMember" xlink:title="PosAutomationAndBankingMember" />
    <link:label xlink:type="resource" xlink:label="tact_PosAutomationAndBankingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_PosAutomationAndBankingMember_lbl" xml:lang="en-US" id="tact_PosAutomationAndBankingMember_lbl">Revenue from sales of thermal printers used primarily by restaurants (including fine dining, casual dining, quick serve and hospitality establishments) located either at the checkout counter or within self-service kiosks to print receipts for consumers or print on linerless labels.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PosAutomationAndBankingMember" xlink:to="tact_PosAutomationAndBankingMember_lbl" xlink:title="label: PosAutomationAndBankingMember to tact_PosAutomationAndBankingMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_PosAutomationAndBankingMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_PosAutomationAndBankingMember_lbl1" xml:lang="en-US" id="tact_PosAutomationAndBankingMember_lbl1">POS Automation and Banking [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PosAutomationAndBankingMember" xlink:to="tact_PosAutomationAndBankingMember_lbl1" xlink:title="label: PosAutomationAndBankingMember to tact_PosAutomationAndBankingMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_PosAutomationAndBankingMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_PosAutomationAndBankingMember_lbl2" xml:lang="en-US" id="tact_PosAutomationAndBankingMember_lbl2">POS Automation [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PosAutomationAndBankingMember" xlink:to="tact_PosAutomationAndBankingMember_lbl2" xlink:title="label: PosAutomationAndBankingMember to tact_PosAutomationAndBankingMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_CasinoAndGamingMember" xlink:label="CasinoAndGamingMember" xlink:title="CasinoAndGamingMember" />
    <link:label xlink:type="resource" xlink:label="tact_CasinoAndGamingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_CasinoAndGamingMember_lbl" xml:lang="en-US" id="tact_CasinoAndGamingMember_lbl">Revenue from sales of thermal ticket printers used in slot machines, video lottery terminals, and other gaming machines that print tickets or receipts instead of issuing coins at casinos and racetracks and other gaming venues worldwide.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CasinoAndGamingMember" xlink:to="tact_CasinoAndGamingMember_lbl" xlink:title="label: CasinoAndGamingMember to tact_CasinoAndGamingMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_CasinoAndGamingMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_CasinoAndGamingMember_lbl1" xml:lang="en-US" id="tact_CasinoAndGamingMember_lbl1">Casino and Gaming [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CasinoAndGamingMember" xlink:to="tact_CasinoAndGamingMember_lbl1" xlink:title="label: CasinoAndGamingMember to tact_CasinoAndGamingMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_CasinoAndGamingMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_CasinoAndGamingMember_lbl2" xml:lang="en-US" id="tact_CasinoAndGamingMember_lbl2">Casino and Gaming [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CasinoAndGamingMember" xlink:to="tact_CasinoAndGamingMember_lbl2" xlink:title="label: CasinoAndGamingMember to tact_CasinoAndGamingMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_TransactServicesGroupMember" xlink:label="TransactServicesGroupMember" xlink:title="TransactServicesGroupMember" />
    <link:label xlink:type="resource" xlink:label="tact_TransactServicesGroupMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_TransactServicesGroupMember_lbl" xml:lang="en-US" id="tact_TransactServicesGroupMember_lbl">Revenue from range of supplies and consumables used in the printing and scanning activities of customers in the restaurant and hospitality, banking, retail, casino and gaming, government and oil and gas exploration markets.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TransactServicesGroupMember" xlink:to="tact_TransactServicesGroupMember_lbl" xlink:title="label: TransactServicesGroupMember to tact_TransactServicesGroupMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_TransactServicesGroupMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_TransactServicesGroupMember_lbl1" xml:lang="en-US" id="tact_TransactServicesGroupMember_lbl1">TransAct Services Group [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TransactServicesGroupMember" xlink:to="tact_TransactServicesGroupMember_lbl1" xlink:title="label: TransactServicesGroupMember to tact_TransactServicesGroupMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_TransactServicesGroupMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_TransactServicesGroupMember_lbl2" xml:lang="en-US" id="tact_TransactServicesGroupMember_lbl2">TransAct Services Group [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TransactServicesGroupMember" xlink:to="tact_TransactServicesGroupMember_lbl2" xlink:title="label: TransactServicesGroupMember to tact_TransactServicesGroupMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerAssetLiabilityNet" xlink:label="ContractWithCustomerAssetLiabilityNet" xlink:title="ContractWithCustomerAssetLiabilityNet" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerAssetLiabilityNet_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_ContractWithCustomerAssetLiabilityNet_lbl" xml:lang="en-US" id="tact_ContractWithCustomerAssetLiabilityNet_lbl">Amount, after allowance for credit loss, of right (asset) to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time and the amount of obligation (liability) to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="tact_ContractWithCustomerAssetLiabilityNet_lbl" xlink:title="label: ContractWithCustomerAssetLiabilityNet to tact_ContractWithCustomerAssetLiabilityNet_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerAssetLiabilityNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_ContractWithCustomerAssetLiabilityNet_lbl1" xml:lang="en-US" id="tact_ContractWithCustomerAssetLiabilityNet_lbl1">Contract with Customer, Asset (Liability), net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="tact_ContractWithCustomerAssetLiabilityNet_lbl1" xlink:title="label: ContractWithCustomerAssetLiabilityNet to tact_ContractWithCustomerAssetLiabilityNet_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerAssetLiabilityNet_lbl2" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="tact_ContractWithCustomerAssetLiabilityNet_lbl2" xml:lang="en-US" id="tact_ContractWithCustomerAssetLiabilityNet_lbl2">Total net contract liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetLiabilityNet" xlink:to="tact_ContractWithCustomerAssetLiabilityNet_lbl2" xlink:title="label: ContractWithCustomerAssetLiabilityNet to tact_ContractWithCustomerAssetLiabilityNet_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerRevenueRecognized" xlink:label="ContractWithCustomerRevenueRecognized" xlink:title="ContractWithCustomerRevenueRecognized" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerRevenueRecognized_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_ContractWithCustomerRevenueRecognized_lbl" xml:lang="en-US" id="tact_ContractWithCustomerRevenueRecognized_lbl">Amount of revenue recognized related to obligation to transfer good or service to customer for which consideration from customer has been received or is due.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerRevenueRecognized" xlink:to="tact_ContractWithCustomerRevenueRecognized_lbl" xlink:title="label: ContractWithCustomerRevenueRecognized to tact_ContractWithCustomerRevenueRecognized_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerRevenueRecognized_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_ContractWithCustomerRevenueRecognized_lbl1" xml:lang="en-US" id="tact_ContractWithCustomerRevenueRecognized_lbl1">Contract with Customer, Revenue Recognized</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerRevenueRecognized" xlink:to="tact_ContractWithCustomerRevenueRecognized_lbl1" xlink:title="label: ContractWithCustomerRevenueRecognized to tact_ContractWithCustomerRevenueRecognized_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerRevenueRecognized_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_ContractWithCustomerRevenueRecognized_lbl2" xml:lang="en-US" id="tact_ContractWithCustomerRevenueRecognized_lbl2">Revenue recognized</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerRevenueRecognized" xlink:to="tact_ContractWithCustomerRevenueRecognized_lbl2" xlink:title="label: ContractWithCustomerRevenueRecognized to tact_ContractWithCustomerRevenueRecognized_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:label="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:title="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl" xml:lang="en-US" id="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl">Amount of obligation to transfer good or service to customer related to customer prepayments for which consideration has been received or is receivable, classified as current.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:to="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl" xlink:title="label: ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent to tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl1" xml:lang="en-US" id="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl1">Contract with Customer, Liability for Customer Prepayments, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:to="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl1" xlink:title="label: ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent to tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl2" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl2" xml:lang="en-US" id="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl2">Customer pre-payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:to="tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl2" xlink:title="label: ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent to tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:label="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:title="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl" xml:lang="en-US" id="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl">Tabular disclosure of supplemental information for the statement of cash flows related to operating leases.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:to="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl" xlink:title="label: LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock to tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl1" xml:lang="en-US" id="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl1">Lessee, Operating Lease, Supplemental Disclosure for Cash Flows [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:to="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl1" xlink:title="label: LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock to tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl2" xml:lang="en-US" id="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl2">Cash Flows for Operating Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:to="tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl2" xlink:title="label: LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock to tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:label="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:title="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl" xml:lang="en-US" id="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl">Tabular disclosure of information related to lessee's operating leases, including weighted average lease term and discount rate.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:to="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl" xlink:title="label: LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock to tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl1" xml:lang="en-US" id="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl1">Lessee, Operating Lease, Lease Term and Discount Rate [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:to="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl1" xlink:title="label: LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock to tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl2" xml:lang="en-US" id="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl2">Additional Information Related to Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:to="tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl2" xlink:title="label: LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock to tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock_lbl2" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_GainFromEmployeeRetentionCredit" xlink:label="GainFromEmployeeRetentionCredit" xlink:title="GainFromEmployeeRetentionCredit" />
    <link:label xlink:type="resource" xlink:label="tact_GainFromEmployeeRetentionCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tact_GainFromEmployeeRetentionCredit_lbl" xml:lang="en-US" id="tact_GainFromEmployeeRetentionCredit_lbl">The amount of gain from the Employee Retention Credit, a refundable tax credit against certain employment taxes equal to 50% of the qualified wages an eligible employer pays to employees after March 12, 2020, and before January 1, 2021.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainFromEmployeeRetentionCredit" xlink:to="tact_GainFromEmployeeRetentionCredit_lbl" xlink:title="label: GainFromEmployeeRetentionCredit to tact_GainFromEmployeeRetentionCredit_lbl" />
    <link:label xlink:type="resource" xlink:label="tact_GainFromEmployeeRetentionCredit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tact_GainFromEmployeeRetentionCredit_lbl1" xml:lang="en-US" id="tact_GainFromEmployeeRetentionCredit_lbl1">Gain from Employee Retention Credit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainFromEmployeeRetentionCredit" xlink:to="tact_GainFromEmployeeRetentionCredit_lbl1" xlink:title="label: GainFromEmployeeRetentionCredit to tact_GainFromEmployeeRetentionCredit_lbl1" />
    <link:label xlink:type="resource" xlink:label="tact_GainFromEmployeeRetentionCredit_lbl2" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="tact_GainFromEmployeeRetentionCredit_lbl2" xml:lang="en-US" id="tact_GainFromEmployeeRetentionCredit_lbl2">Gain from employee retention credit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainFromEmployeeRetentionCredit" xlink:to="tact_GainFromEmployeeRetentionCredit_lbl2" xlink:title="label: GainFromEmployeeRetentionCredit to tact_GainFromEmployeeRetentionCredit_lbl2" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>tact-20230630_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.7.1.5162 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:roleRef roleURI="http://transact-tech.com/role/IncomeTaxesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#IncomeTaxesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesDetailsCalc2" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesDetailsCalc2" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/DebtDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#DebtDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/InventoriesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#InventoriesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueRemainingPerformanceObligationsDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueContractBalancesDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueContractBalancesDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueDisaggregationOfRevenueDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/BasisOfPresentationDetails" xlink:type="simple" xlink:href="tact-20230630.xsd#BasisOfPresentationDetails" />
  <link:roleRef roleURI="http://transact-tech.com/role/LeasesTables" xlink:type="simple" xlink:href="tact-20230630.xsd#LeasesTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShareTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/InventoriesTables" xlink:type="simple" xlink:href="tact-20230630.xsd#InventoriesTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/RevenueTables" xlink:type="simple" xlink:href="tact-20230630.xsd#RevenueTables" />
  <link:roleRef roleURI="http://transact-tech.com/role/SignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="tact-20230630.xsd#SignificantAccountingPoliciesPolicies" />
  <link:roleRef roleURI="http://transact-tech.com/role/BasisOfPresentationPolicies" xlink:type="simple" xlink:href="tact-20230630.xsd#BasisOfPresentationPolicies" />
  <link:roleRef roleURI="http://transact-tech.com/role/SubsequentEvents" xlink:type="simple" xlink:href="tact-20230630.xsd#SubsequentEvents" />
  <link:roleRef roleURI="http://transact-tech.com/role/IncomeTaxes" xlink:type="simple" xlink:href="tact-20230630.xsd#IncomeTaxes" />
  <link:roleRef roleURI="http://transact-tech.com/role/Leases" xlink:type="simple" xlink:href="tact-20230630.xsd#Leases" />
  <link:roleRef roleURI="http://transact-tech.com/role/EarningsPerShare" xlink:type="simple" xlink:href="tact-20230630.xsd#EarningsPerShare" />
  <link:roleRef roleURI="http://transact-tech.com/role/Debt" xlink:type="simple" xlink:href="tact-20230630.xsd#Debt" />
  <link:roleRef roleURI="http://transact-tech.com/role/Inventories" xlink:type="simple" xlink:href="tact-20230630.xsd#Inventories" />
  <link:roleRef roleURI="http://transact-tech.com/role/Revenue" xlink:type="simple" xlink:href="tact-20230630.xsd#Revenue" />
  <link:roleRef roleURI="http://transact-tech.com/role/SignificantAccountingPolicies" xlink:type="simple" xlink:href="tact-20230630.xsd#SignificantAccountingPolicies" />
  <link:roleRef roleURI="http://transact-tech.com/role/BasisOfPresentation" xlink:type="simple" xlink:href="tact-20230630.xsd#BasisOfPresentation" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfChangesInShareholdersEquity" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfComprehensiveIncomeLoss" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedStatementsOfOperations" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef roleURI="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tact-20230630.xsd#CondensedConsolidatedBalanceSheets" />
  <link:roleRef roleURI="http://transact-tech.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="tact-20230630.xsd#DocumentAndEntityInformation" />
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/DocumentAndEntityInformation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentType" xlink:title="presentation: CoverAbstract to DocumentType" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AmendmentFlag" xlink:title="presentation: CoverAbstract to AmendmentFlag" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport" xlink:label="DocumentQuarterlyReport" xlink:title="DocumentQuarterlyReport" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentQuarterlyReport" xlink:title="presentation: CoverAbstract to DocumentQuarterlyReport" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentPeriodEndDate" xlink:title="presentation: CoverAbstract to DocumentPeriodEndDate" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate" xlink:label="CurrentFiscalYearEndDate" xlink:title="CurrentFiscalYearEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CurrentFiscalYearEndDate" xlink:title="presentation: CoverAbstract to CurrentFiscalYearEndDate" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalYearFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalYearFocus" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalPeriodFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalPeriodFocus" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport" xlink:label="DocumentTransitionReport" xlink:title="DocumentTransitionReport" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentTransitionReport" xlink:title="presentation: CoverAbstract to DocumentTransitionReport" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFileNumber" xlink:title="presentation: CoverAbstract to EntityFileNumber" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityRegistrantName" xlink:title="presentation: CoverAbstract to EntityRegistrantName" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCentralIndexKey" xlink:title="presentation: CoverAbstract to EntityCentralIndexKey" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityIncorporationStateCountryCode" xlink:title="presentation: CoverAbstract to EntityIncorporationStateCountryCode" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityTaxIdentificationNumber" xlink:title="presentation: CoverAbstract to EntityTaxIdentificationNumber" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine1" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine1" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine2" xlink:label="EntityAddressAddressLine2" xlink:title="EntityAddressAddressLine2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine2" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine2" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressCityOrTown" xlink:title="presentation: CoverAbstract to EntityAddressCityOrTown" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressStateOrProvince" xlink:title="presentation: CoverAbstract to EntityAddressStateOrProvince" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressPostalZipCode" xlink:title="presentation: CoverAbstract to EntityAddressPostalZipCode" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CityAreaCode" xlink:title="presentation: CoverAbstract to CityAreaCode" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="LocalPhoneNumber" xlink:title="presentation: CoverAbstract to LocalPhoneNumber" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="Security12bTitle" xlink:title="presentation: CoverAbstract to Security12bTitle" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="TradingSymbol" xlink:title="presentation: CoverAbstract to TradingSymbol" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="SecurityExchangeName" xlink:title="presentation: CoverAbstract to SecurityExchangeName" order="22.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus" xlink:label="EntityCurrentReportingStatus" xlink:title="EntityCurrentReportingStatus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCurrentReportingStatus" xlink:title="presentation: CoverAbstract to EntityCurrentReportingStatus" order="23.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent" xlink:label="EntityInteractiveDataCurrent" xlink:title="EntityInteractiveDataCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityInteractiveDataCurrent" xlink:title="presentation: CoverAbstract to EntityInteractiveDataCurrent" order="24.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory" xlink:label="EntityFilerCategory" xlink:title="EntityFilerCategory" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFilerCategory" xlink:title="presentation: CoverAbstract to EntityFilerCategory" order="25.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness" xlink:label="EntitySmallBusiness" xlink:title="EntitySmallBusiness" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntitySmallBusiness" xlink:title="presentation: CoverAbstract to EntitySmallBusiness" order="26.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityEmergingGrowthCompany" xlink:title="presentation: CoverAbstract to EntityEmergingGrowthCompany" order="27.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany" xlink:label="EntityShellCompany" xlink:title="EntityShellCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityShellCompany" xlink:title="presentation: CoverAbstract to EntityShellCompany" order="28.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="EntityCommonStockSharesOutstanding" xlink:title="EntityCommonStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCommonStockSharesOutstanding" xlink:title="presentation: CoverAbstract to EntityCommonStockSharesOutstanding" order="29.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="presentation: AssetsCurrentAbstract to CashAndCashEquivalentsAtCarryingValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AccountsReceivableNetCurrent" xlink:title="presentation: AssetsCurrentAbstract to AccountsReceivableNetCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NontradeReceivablesCurrent" xlink:label="NontradeReceivablesCurrent" xlink:title="NontradeReceivablesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="NontradeReceivablesCurrent" xlink:title="presentation: AssetsCurrentAbstract to NontradeReceivablesCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="InventoryNet" xlink:title="presentation: AssetsCurrentAbstract to InventoryNet" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="OtherAssetsCurrent" xlink:title="presentation: AssetsCurrentAbstract to OtherAssetsCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AssetsCurrent" xlink:title="presentation: AssetsCurrentAbstract to AssetsCurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AssetsCurrentAbstract" xlink:title="presentation: AssetsAbstract to AssetsCurrentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="presentation: AssetsAbstract to PropertyPlantAndEquipmentNet" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="OperatingLeaseRightOfUseAsset" xlink:title="presentation: AssetsAbstract to OperatingLeaseRightOfUseAsset" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill" xlink:label="Goodwill" xlink:title="Goodwill" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="Goodwill" xlink:title="presentation: AssetsAbstract to Goodwill" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="presentation: AssetsAbstract to DeferredIncomeTaxAssetsNet" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="IntangibleAssetsNetExcludingGoodwill" xlink:title="IntangibleAssetsNetExcludingGoodwill" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="IntangibleAssetsNetExcludingGoodwill" xlink:title="presentation: AssetsAbstract to IntangibleAssetsNetExcludingGoodwill" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="OtherAssetsNoncurrent" xlink:title="presentation: AssetsAbstract to OtherAssetsNoncurrent" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrent" xlink:label="AssetsNoncurrent" xlink:title="AssetsNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AssetsNoncurrent" xlink:title="presentation: AssetsAbstract to AssetsNoncurrent" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="Assets" xlink:title="presentation: AssetsAbstract to Assets" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="AssetsAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to AssetsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="LinesOfCreditCurrent" xlink:title="LinesOfCreditCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="LinesOfCreditCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to LinesOfCreditCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent" xlink:label="AccountsPayableCurrent" xlink:title="AccountsPayableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccountsPayableCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to AccountsPayableCurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="AccruedLiabilitiesCurrent" xlink:title="AccruedLiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccruedLiabilitiesCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to AccruedLiabilitiesCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="OperatingLeaseLiabilityCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to OperatingLeaseLiabilityCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="ContractWithCustomerLiabilityCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to ContractWithCustomerLiabilityCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="LiabilitiesCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to LiabilitiesCurrent" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesCurrentAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesCurrentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="ContractWithCustomerLiabilityNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to ContractWithCustomerLiabilityNoncurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to OperatingLeaseLiabilityNoncurrent" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to OtherLiabilitiesNoncurrent" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="LiabilitiesNoncurrent" xlink:title="LiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesNoncurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities" xlink:label="Liabilities" xlink:title="Liabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="Liabilities" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to Liabilities" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="CommitmentsAndContingencies" xlink:title="CommitmentsAndContingencies" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="CommitmentsAndContingencies" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to CommitmentsAndContingencies" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="StockholdersEquityAbstract" xlink:title="StockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockValue" xlink:title="presentation: StockholdersEquityAbstract to CommonStockValue" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="AdditionalPaidInCapitalCommonStock" xlink:title="AdditionalPaidInCapitalCommonStock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="AdditionalPaidInCapitalCommonStock" xlink:title="presentation: StockholdersEquityAbstract to AdditionalPaidInCapitalCommonStock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="RetainedEarningsAccumulatedDeficit" xlink:title="presentation: StockholdersEquityAbstract to RetainedEarningsAccumulatedDeficit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="presentation: StockholdersEquityAbstract to AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue" xlink:label="TreasuryStockValue" xlink:title="TreasuryStockValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="TreasuryStockValue" xlink:title="presentation: StockholdersEquityAbstract to TreasuryStockValue" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="StockholdersEquity" xlink:title="presentation: StockholdersEquityAbstract to StockholdersEquity" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="StockholdersEquityAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to StockholdersEquityAbstract" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesAndStockholdersEquity" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesAndStockholdersEquity" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="LiabilitiesAndStockholdersEquityAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="presentation: AssetsAbstract to AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:title="FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:title="presentation: AssetsAbstract to FiniteLivedIntangibleAssetsAccumulatedAmortization" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="AssetsAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to AssetsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="StockholdersEquityAbstract" xlink:title="StockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="CommonStockParOrStatedValuePerShare" xlink:title="CommonStockParOrStatedValuePerShare" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockParOrStatedValuePerShare" xlink:title="presentation: StockholdersEquityAbstract to CommonStockParOrStatedValuePerShare" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="CommonStockSharesAuthorized" xlink:title="CommonStockSharesAuthorized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockSharesAuthorized" xlink:title="presentation: StockholdersEquityAbstract to CommonStockSharesAuthorized" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued" xlink:label="CommonStockSharesIssued" xlink:title="CommonStockSharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockSharesIssued" xlink:title="presentation: StockholdersEquityAbstract to CommonStockSharesIssued" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="CommonStockSharesOutstanding" xlink:title="CommonStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockSharesOutstanding" xlink:title="presentation: StockholdersEquityAbstract to CommonStockSharesOutstanding" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="TreasuryStockCommonShares" xlink:title="TreasuryStockCommonShares" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="TreasuryStockCommonShares" xlink:title="presentation: StockholdersEquityAbstract to TreasuryStockCommonShares" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="StockholdersEquityAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to StockholdersEquityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="LiabilitiesAndStockholdersEquityAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract" xlink:label="IncomeStatementAbstract" xlink:title="IncomeStatementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: IncomeStatementAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenue" xlink:label="CostOfRevenue" xlink:title="CostOfRevenue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="CostOfRevenue" xlink:title="presentation: IncomeStatementAbstract to CostOfRevenue" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="GrossProfit" xlink:title="presentation: IncomeStatementAbstract to GrossProfit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="OperatingExpensesAbstract" xlink:title="OperatingExpensesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="ResearchAndDevelopmentExpense" xlink:title="ResearchAndDevelopmentExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="ResearchAndDevelopmentExpense" xlink:title="presentation: OperatingExpensesAbstract to ResearchAndDevelopmentExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="SellingAndMarketingExpense" xlink:title="SellingAndMarketingExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="SellingAndMarketingExpense" xlink:title="presentation: OperatingExpensesAbstract to SellingAndMarketingExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="GeneralAndAdministrativeExpense" xlink:title="GeneralAndAdministrativeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="GeneralAndAdministrativeExpense" xlink:title="presentation: OperatingExpensesAbstract to GeneralAndAdministrativeExpense" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingExpenses" xlink:label="OperatingExpenses" xlink:title="OperatingExpenses" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingExpensesAbstract" xlink:to="OperatingExpenses" xlink:title="presentation: OperatingExpensesAbstract to OperatingExpenses" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingExpensesAbstract" xlink:title="presentation: IncomeStatementAbstract to OperatingExpensesAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingIncomeLoss" xlink:title="presentation: IncomeStatementAbstract to OperatingIncomeLoss" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="NonoperatingIncomeExpenseAbstract" xlink:title="NonoperatingIncomeExpenseAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNonoperatingNet" xlink:label="InterestIncomeExpenseNonoperatingNet" xlink:title="InterestIncomeExpenseNonoperatingNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="InterestIncomeExpenseNonoperatingNet" xlink:title="presentation: NonoperatingIncomeExpenseAbstract to InterestIncomeExpenseNonoperatingNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="OtherNonoperatingIncomeExpense" xlink:title="presentation: NonoperatingIncomeExpenseAbstract to OtherNonoperatingIncomeExpense" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="NonoperatingIncomeExpense" xlink:title="NonoperatingIncomeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NonoperatingIncomeExpenseAbstract" xlink:to="NonoperatingIncomeExpense" xlink:title="presentation: NonoperatingIncomeExpenseAbstract to NonoperatingIncomeExpense" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="NonoperatingIncomeExpenseAbstract" xlink:title="presentation: IncomeStatementAbstract to NonoperatingIncomeExpenseAbstract" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="presentation: IncomeStatementAbstract to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="IncomeTaxExpenseBenefit" xlink:title="presentation: IncomeStatementAbstract to IncomeTaxExpenseBenefit" order="7.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: IncomeStatementAbstract to NetIncomeLoss" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareBasic" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareDiluted" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareDiluted" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="EarningsPerShareAbstract" xlink:title="presentation: IncomeStatementAbstract to EarningsPerShareAbstract" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract" xlink:label="EarningsPerShareBasicOtherDisclosuresAbstract" xlink:title="EarningsPerShareBasicOtherDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareBasicOtherDisclosuresAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="presentation: EarningsPerShareBasicOtherDisclosuresAbstract to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareBasicOtherDisclosuresAbstract" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="presentation: EarningsPerShareBasicOtherDisclosuresAbstract to WeightedAverageNumberOfDilutedSharesOutstanding" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="EarningsPerShareBasicOtherDisclosuresAbstract" xlink:title="presentation: IncomeStatementAbstract to EarningsPerShareBasicOtherDisclosuresAbstract" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:title="StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="ComprehensiveIncomeNetOfTax" xlink:title="ComprehensiveIncomeNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="ComprehensiveIncomeNetOfTax" xlink:title="presentation: StatementOfIncomeAndComprehensiveIncomeAbstract to ComprehensiveIncomeNetOfTax" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="StatementOfCashFlowsAbstract" xlink:title="StatementOfCashFlowsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="ShareBasedCompensation" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to ShareBasedCompensation" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationAndAmortization" xlink:label="DepreciationAndAmortization" xlink:title="DepreciationAndAmortization" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="DepreciationAndAmortization" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to DepreciationAndAmortization" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="DeferredIncomeTaxExpenseBenefit" xlink:title="DeferredIncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="DeferredIncomeTaxExpenseBenefit" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to DeferredIncomeTaxExpenseBenefit" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossUnrealized" xlink:label="ForeignCurrencyTransactionGainLossUnrealized" xlink:title="ForeignCurrencyTransactionGainLossUnrealized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="ForeignCurrencyTransactionGainLossUnrealized" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to ForeignCurrencyTransactionGainLossUnrealized" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccountsReceivable" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccountsReceivable" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="IncreaseDecreaseInOtherReceivables" xlink:title="IncreaseDecreaseInOtherReceivables" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInOtherReceivables" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInOtherReceivables" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInInventories" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInInventories" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="IncreaseDecreaseInOtherOperatingAssets" xlink:title="IncreaseDecreaseInOtherOperatingAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInOtherOperatingAssets" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInOtherOperatingAssets" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="IncreaseDecreaseInAccountsPayable" xlink:title="IncreaseDecreaseInAccountsPayable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccountsPayable" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccountsPayable" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:title="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="presentation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to IncreaseDecreaseInOperatingCapitalAbstract" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInOperatingActivities" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to NetCashProvidedByUsedInOperatingActivities" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to PaymentsToAcquirePropertyPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInInvestingActivities" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to NetCashProvidedByUsedInInvestingActivities" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInInvestingActivitiesAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:title="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to PaymentsRelatedToTaxWithholdingForShareBasedCompensation" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfLoanCosts" xlink:label="PaymentsOfLoanCosts" xlink:title="PaymentsOfLoanCosts" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="PaymentsOfLoanCosts" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to PaymentsOfLoanCosts" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInFinancingActivities" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to NetCashProvidedByUsedInFinancingActivities" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInFinancingActivitiesAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="presentation: StatementOfCashFlowsAbstract to EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="NoncashInvestingAndFinancingItemsAbstract" xlink:title="NoncashInvestingAndFinancingItemsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:label="CapitalExpendituresIncurredButNotYetPaid" xlink:title="CapitalExpendituresIncurredButNotYetPaid" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NoncashInvestingAndFinancingItemsAbstract" xlink:to="CapitalExpendituresIncurredButNotYetPaid" xlink:title="presentation: NoncashInvestingAndFinancingItemsAbstract to CapitalExpendituresIncurredButNotYetPaid" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NoncashInvestingAndFinancingItemsAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NoncashInvestingAndFinancingItemsAbstract" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="StatementOfStockholdersEquityAbstract" xlink:title="StatementOfStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="CommonStockMember" xlink:title="presentation: StatementEquityComponentsAxis to CommonStockMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="AdditionalPaidInCapitalMember" xlink:title="presentation: StatementEquityComponentsAxis to AdditionalPaidInCapitalMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="RetainedEarningsMember" xlink:title="presentation: StatementEquityComponentsAxis to RetainedEarningsMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="TreasuryStockCommonMember" xlink:title="presentation: StatementEquityComponentsAxis to TreasuryStockCommonMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="presentation: StatementEquityComponentsAxis to AccumulatedOtherComprehensiveIncomeMember" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="presentation: StatementEquityComponentsAxis to EquityComponentDomain" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementTable" xlink:to="StatementEquityComponentsAxis" xlink:title="presentation: StatementTable to StatementEquityComponentsAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockholdersEquity" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockholdersEquity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:label="StockIssuedDuringPeriodValueNewIssues" xlink:title="StockIssuedDuringPeriodValueNewIssues" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockIssuedDuringPeriodValueNewIssues" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockIssuedDuringPeriodValueNewIssues" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:label="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:title="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockGrantedDuringPeriodValueSharebasedCompensationForfeited" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockGrantedDuringPeriodValueSharebasedCompensationForfeited" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="NetIncomeLoss" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to NetIncomeLoss" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity_2" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockholdersEquity_2" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockholdersEquity" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="presentation: StatementLineItems to IncreaseDecreaseInStockholdersEquityRollForward" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockTransactionsParentheticalDisclosuresAbstract" xlink:label="StockTransactionsParentheticalDisclosuresAbstract" xlink:title="StockTransactionsParentheticalDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockTransactionsParentheticalDisclosuresAbstract" xlink:to="StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:title="presentation: StockTransactionsParentheticalDisclosuresAbstract to StockIssuedDuringPeriodSharesStockOptionsExercised" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:title="SharesPaidForTaxWithholdingForShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockTransactionsParentheticalDisclosuresAbstract" xlink:to="SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:title="presentation: StockTransactionsParentheticalDisclosuresAbstract to SharesPaidForTaxWithholdingForShareBasedCompensation" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="StockTransactionsParentheticalDisclosuresAbstract" xlink:title="presentation: StatementLineItems to StockTransactionsParentheticalDisclosuresAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementTable" xlink:to="StatementLineItems" xlink:title="presentation: StatementTable to StatementLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfStockholdersEquityAbstract" xlink:to="StatementTable" xlink:title="presentation: StatementOfStockholdersEquityAbstract to StatementTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/BasisOfPresentation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:label="BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:title="BusinessDescriptionAndBasisOfPresentationTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="BusinessDescriptionAndBasisOfPresentationTextBlock" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to BusinessDescriptionAndBasisOfPresentationTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/SignificantAccountingPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Revenue">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="RevenueFromContractWithCustomerTextBlock" xlink:title="RevenueFromContractWithCustomerTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="RevenueFromContractWithCustomerTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to RevenueFromContractWithCustomerTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Inventories">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="InventoryDisclosureTextBlock" xlink:title="InventoryDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryDisclosureTextBlock" xlink:title="presentation: InventoryDisclosureAbstract to InventoryDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Debt">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="DebtDisclosureTextBlock" xlink:title="DebtDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtDisclosureTextBlock" xlink:title="presentation: DebtDisclosureAbstract to DebtDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShare">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="EarningsPerShareTextBlock" xlink:title="EarningsPerShareTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareTextBlock" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/Leases">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="LesseeOperatingLeasesTextBlock" xlink:title="LesseeOperatingLeasesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeasesTextBlock" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeasesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/IncomeTaxes">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="IncomeTaxDisclosureTextBlock" xlink:title="IncomeTaxDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxDisclosureTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/SubsequentEvents">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract" xlink:label="SubsequentEventsAbstract" xlink:title="SubsequentEventsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock" xlink:label="SubsequentEventsTextBlock" xlink:title="SubsequentEventsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SubsequentEventsAbstract" xlink:to="SubsequentEventsTextBlock" xlink:title="presentation: SubsequentEventsAbstract to SubsequentEventsTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/BasisOfPresentationPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="BasisOfAccountingPolicyPolicyTextBlock" xlink:title="BasisOfAccountingPolicyPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="BasisOfAccountingPolicyPolicyTextBlock" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to BasisOfAccountingPolicyPolicyTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates" xlink:label="UseOfEstimates" xlink:title="UseOfEstimates" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="UseOfEstimates" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to UseOfEstimates" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PriorPeriodReclassificationAdjustmentDescription" xlink:label="PriorPeriodReclassificationAdjustmentDescription" xlink:title="PriorPeriodReclassificationAdjustmentDescription" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="PriorPeriodReclassificationAdjustmentDescription" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to PriorPeriodReclassificationAdjustmentDescription" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/SignificantAccountingPoliciesPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:label="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to CreditLossFinancialInstrumentPolicyTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="DisaggregationOfRevenueTableTextBlock" xlink:title="DisaggregationOfRevenueTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="DisaggregationOfRevenueTableTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to DisaggregationOfRevenueTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="ContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerAssetAndLiabilityTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/InventoriesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="ScheduleOfInventoryCurrentTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="presentation: InventoryDisclosureAbstract to ScheduleOfInventoryCurrentTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShareTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="presentation: EarningsPerShareAbstract to ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:label="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:title="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:label="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:title="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:title="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeaseLiabilityMaturityTableTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/BasisOfPresentationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:title="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:label="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="RevolvingCreditFacilitySienaLendingGroupLlcMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="presentation: DebtInstrumentNameDomain to RevolvingCreditFacilitySienaLendingGroupLlcMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_GainFromEmployeeRetentionCredit" xlink:label="GainFromEmployeeRetentionCredit" xlink:title="GainFromEmployeeRetentionCredit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="GainFromEmployeeRetentionCredit" xlink:title="presentation: DebtInstrumentsAbstract to GainFromEmployeeRetentionCredit" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="presentation: DebtInstrumentsAbstract to LineOfCreditFacilityMaximumBorrowingCapacity" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis" xlink:label="ProductOrServiceAxis" xlink:title="ProductOrServiceAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain" xlink:label="ProductsAndServicesDomain" xlink:title="ProductsAndServicesDomain" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_FoodServiceTechnologyMember" xlink:label="FoodServiceTechnologyMember" xlink:title="FoodServiceTechnologyMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="FoodServiceTechnologyMember" xlink:title="presentation: ProductsAndServicesDomain to FoodServiceTechnologyMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_PosAutomationAndBankingMember" xlink:label="PosAutomationAndBankingMember" xlink:title="PosAutomationAndBankingMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="PosAutomationAndBankingMember" xlink:title="presentation: ProductsAndServicesDomain to PosAutomationAndBankingMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_CasinoAndGamingMember" xlink:label="CasinoAndGamingMember" xlink:title="CasinoAndGamingMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="CasinoAndGamingMember" xlink:title="presentation: ProductsAndServicesDomain to CasinoAndGamingMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_TransactServicesGroupMember" xlink:label="TransactServicesGroupMember" xlink:title="TransactServicesGroupMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductsAndServicesDomain" xlink:to="TransactServicesGroupMember" xlink:title="presentation: ProductsAndServicesDomain to TransactServicesGroupMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ProductOrServiceAxis" xlink:to="ProductsAndServicesDomain" xlink:title="presentation: ProductOrServiceAxis to ProductsAndServicesDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="ProductOrServiceAxis" xlink:title="presentation: DisaggregationOfRevenueTable to ProductOrServiceAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="presentation: SegmentGeographicalDomain to US" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_InternationalMember" xlink:label="InternationalMember" xlink:title="InternationalMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="InternationalMember" xlink:title="presentation: SegmentGeographicalDomain to InternationalMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="presentation: StatementGeographicalAxis to SegmentGeographicalDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="StatementGeographicalAxis" xlink:title="presentation: DisaggregationOfRevenueTable to StatementGeographicalAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: DisaggregationOfRevenueAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="DisaggregationOfRevenueLineItems" xlink:title="presentation: DisaggregationOfRevenueTable to DisaggregationOfRevenueLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="DisaggregationOfRevenueTable" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to DisaggregationOfRevenueTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueContractBalancesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerRevenueRecognized" xlink:label="ContractWithCustomerRevenueRecognized" xlink:title="ContractWithCustomerRevenueRecognized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerRevenueRecognized" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerRevenueRecognized" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityAbstract" xlink:label="ContractWithCustomerLiabilityAbstract" xlink:title="ContractWithCustomerLiabilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent" xlink:label="ContractWithCustomerAssetNetCurrent" xlink:title="ContractWithCustomerAssetNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerAssetNetCurrent" xlink:title="presentation: ContractWithCustomerLiabilityAbstract to ContractWithCustomerAssetNetCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="ContractWithCustomerAssetNetNoncurrent" xlink:title="ContractWithCustomerAssetNetNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerAssetNetNoncurrent" xlink:title="presentation: ContractWithCustomerLiabilityAbstract to ContractWithCustomerAssetNetNoncurrent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:label="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:title="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" xlink:title="presentation: ContractWithCustomerLiabilityAbstract to ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="ContractWithCustomerLiabilityCurrent" xlink:title="ContractWithCustomerLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerLiabilityCurrent" xlink:title="presentation: ContractWithCustomerLiabilityAbstract to ContractWithCustomerLiabilityCurrent" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="ContractWithCustomerLiabilityNoncurrent" xlink:title="ContractWithCustomerLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerLiabilityNoncurrent" xlink:title="presentation: ContractWithCustomerLiabilityAbstract to ContractWithCustomerLiabilityNoncurrent" order="4.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_ContractWithCustomerAssetLiabilityNet" xlink:label="ContractWithCustomerAssetLiabilityNet" xlink:title="ContractWithCustomerAssetLiabilityNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ContractWithCustomerLiabilityAbstract" xlink:to="ContractWithCustomerAssetLiabilityNet" xlink:title="presentation: ContractWithCustomerLiabilityAbstract to ContractWithCustomerAssetLiabilityNet" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerLiabilityAbstract" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerLiabilityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" xlink:title="presentation: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuePerformanceObligationAbstract" xlink:label="RevenuePerformanceObligationAbstract" xlink:title="RevenuePerformanceObligationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligation" xlink:label="RevenueRemainingPerformanceObligation" xlink:title="RevenueRemainingPerformanceObligation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenuePerformanceObligationAbstract" xlink:to="RevenueRemainingPerformanceObligation" xlink:title="presentation: RevenuePerformanceObligationAbstract to RevenueRemainingPerformanceObligation" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:label="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenuePerformanceObligationAbstract" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" xlink:title="presentation: RevenuePerformanceObligationAbstract to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:to="RevenuePerformanceObligationAbstract" xlink:title="presentation: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems to RevenuePerformanceObligationAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" xlink:title="presentation: RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/InventoriesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="InventoryDisclosureAbstract" xlink:title="InventoryDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:label="InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:title="InventoryRawMaterialsAndSuppliesNetOfReserves" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryRawMaterialsAndSuppliesNetOfReserves" xlink:title="presentation: InventoryDisclosureAbstract to InventoryRawMaterialsAndSuppliesNetOfReserves" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="InventoryFinishedGoodsNetOfReserves" xlink:title="InventoryFinishedGoodsNetOfReserves" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryFinishedGoodsNetOfReserves" xlink:title="presentation: InventoryDisclosureAbstract to InventoryFinishedGoodsNetOfReserves" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryDisclosureAbstract" xlink:to="InventoryNet" xlink:title="presentation: InventoryDisclosureAbstract to InventoryNet" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/DebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis" xlink:label="DebtInstrumentAxis" xlink:title="DebtInstrumentAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="DebtInstrumentNameDomain" xlink:title="DebtInstrumentNameDomain" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:label="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="RevolvingCreditFacilitySienaLendingGroupLlcMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentNameDomain" xlink:to="RevolvingCreditFacilitySienaLendingGroupLlcMember" xlink:title="presentation: DebtInstrumentNameDomain to RevolvingCreditFacilitySienaLendingGroupLlcMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentAxis" xlink:to="DebtInstrumentNameDomain" xlink:title="presentation: DebtInstrumentAxis to DebtInstrumentNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentAxis" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis" xlink:label="VariableRateAxis" xlink:title="VariableRateAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain" xlink:label="VariableRateDomain" xlink:title="VariableRateDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrimeRateMember" xlink:label="PrimeRateMember" xlink:title="PrimeRateMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableRateDomain" xlink:to="PrimeRateMember" xlink:title="presentation: VariableRateDomain to PrimeRateMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FederalFundsEffectiveSwapRateMember" xlink:label="FederalFundsEffectiveSwapRateMember" xlink:title="FederalFundsEffectiveSwapRateMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableRateDomain" xlink:to="FederalFundsEffectiveSwapRateMember" xlink:title="presentation: VariableRateDomain to FederalFundsEffectiveSwapRateMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="VariableRateAxis" xlink:to="VariableRateDomain" xlink:title="presentation: VariableRateAxis to VariableRateDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="VariableRateAxis" xlink:title="presentation: DebtInstrumentTable to VariableRateAxis" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="RangeAxis" xlink:title="presentation: DebtInstrumentTable to RangeAxis" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityAbstract" xlink:label="LineOfCreditFacilityAbstract" xlink:title="LineOfCreditFacilityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="presentation: LineOfCreditFacilityAbstract to LineOfCreditFacilityMaximumBorrowingCapacity" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentBasisSpreadOnVariableRate1" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="DebtInstrumentInterestRateStatedPercentage" xlink:title="DebtInstrumentInterestRateStatedPercentage" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentInterestRateStatedPercentage" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentInterestRateStatedPercentage" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredFinanceCostsGross" xlink:label="DeferredFinanceCostsGross" xlink:title="DeferredFinanceCostsGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DeferredFinanceCostsGross" xlink:title="presentation: LineOfCreditFacilityAbstract to DeferredFinanceCostsGross" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:label="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:title="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:title="presentation: LineOfCreditFacilityAbstract to LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:label="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:title="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentFinancialCovenantEligibleAccountsReceivable" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentFinancialCovenantEligibleAccountsReceivable" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventory" xlink:label="DebtInstrumentFinancialCovenantEligibleInventory" xlink:title="DebtInstrumentFinancialCovenantEligibleInventory" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentFinancialCovenantEligibleInventory" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentFinancialCovenantEligibleInventory" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:label="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:title="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:label="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:title="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:title="LineOfCreditFacilityRemainingBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="LineOfCreditFacilityRemainingBorrowingCapacity" xlink:title="presentation: LineOfCreditFacilityAbstract to LineOfCreditFacilityRemainingBorrowingCapacity" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebt" xlink:label="SecuredDebt" xlink:title="SecuredDebt" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="SecuredDebt" xlink:title="presentation: LineOfCreditFacilityAbstract to SecuredDebt" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:label="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:title="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:label="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:title="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:label="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:title="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tact-20230630.xsd#tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:label="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:title="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAbstract" xlink:to="DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" xlink:title="presentation: LineOfCreditFacilityAbstract to DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityAbstract" xlink:title="presentation: DebtInstrumentLineItems to LineOfCreditFacilityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: EarningsPerShareAbstract to NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract to WeightedAverageNumberOfDilutedSharesOutstanding" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:title="presentation: EarningsPerShareAbstract to WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract" xlink:label="EarningsPerShareBasicAbstract" xlink:title="EarningsPerShareBasicAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareBasicAbstract" xlink:to="EarningsPerShareBasic" xlink:title="presentation: EarningsPerShareBasicAbstract to EarningsPerShareBasic" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareBasicAbstract" xlink:to="EarningsPerShareDiluted" xlink:title="presentation: EarningsPerShareBasicAbstract to EarningsPerShareDiluted" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareBasicAbstract" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareBasicAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="AntidilutiveSecuritiesNameDomain" xlink:title="AntidilutiveSecuritiesNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockCompensationPlanMember" xlink:label="StockCompensationPlanMember" xlink:title="StockCompensationPlanMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesNameDomain" xlink:to="StockCompensationPlanMember" xlink:title="presentation: AntidilutiveSecuritiesNameDomain to StockCompensationPlanMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="AntidilutiveSecuritiesNameDomain" xlink:title="presentation: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis to AntidilutiveSecuritiesNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:title="presentation: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareReconciliationAbstract" xlink:label="EarningsPerShareReconciliationAbstract" xlink:title="EarningsPerShareReconciliationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareReconciliationAbstract" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:title="presentation: EarningsPerShareReconciliationAbstract to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="EarningsPerShareReconciliationAbstract" xlink:title="presentation: AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems to EarningsPerShareReconciliationAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:title="presentation: ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable to AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:title="presentation: EarningsPerShareAbstract to ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract" xlink:label="LeasesAbstract" xlink:title="LeasesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseExpense" xlink:label="OperatingLeaseExpense" xlink:title="OperatingLeaseExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="OperatingLeaseExpense" xlink:title="presentation: LeasesAbstract to OperatingLeaseExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:label="CashFlowOperatingActivitiesLesseeAbstract" xlink:title="CashFlowOperatingActivitiesLesseeAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments" xlink:label="OperatingLeasePayments" xlink:title="OperatingLeasePayments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CashFlowOperatingActivitiesLesseeAbstract" xlink:to="OperatingLeasePayments" xlink:title="presentation: CashFlowOperatingActivitiesLesseeAbstract to OperatingLeasePayments" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="CashFlowOperatingActivitiesLesseeAbstract" xlink:title="presentation: LeasesAbstract to CashFlowOperatingActivitiesLesseeAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseDescriptionAbstract" xlink:label="LesseeOperatingLeaseDescriptionAbstract" xlink:title="LesseeOperatingLeaseDescriptionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="OperatingLeaseWeightedAverageRemainingLeaseTerm1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LesseeOperatingLeaseDescriptionAbstract" xlink:to="OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:title="presentation: LesseeOperatingLeaseDescriptionAbstract to OperatingLeaseWeightedAverageRemainingLeaseTerm1" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LesseeOperatingLeaseDescriptionAbstract" xlink:to="OperatingLeaseWeightedAverageDiscountRatePercent" xlink:title="presentation: LesseeOperatingLeaseDescriptionAbstract to OperatingLeaseWeightedAverageDiscountRatePercent" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="LesseeOperatingLeaseDescriptionAbstract" xlink:title="presentation: LeasesAbstract to LesseeOperatingLeaseDescriptionAbstract" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:title="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityPaymentsDue" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityPaymentsDue" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability" xlink:label="OperatingLeaseLiability" xlink:title="OperatingLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="OperatingLeaseLiability" xlink:title="presentation: OperatingLeaseLiabilitiesPaymentsDueAbstract to OperatingLeaseLiability" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LeasesAbstract" xlink:to="OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:title="presentation: LeasesAbstract to OperatingLeaseLiabilitiesPaymentsDueAbstract" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/LeasesDetailsCalc2" />
  <link:presentationLink xlink:type="extended" xlink:role="http://transact-tech.com/role/IncomeTaxesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxExpenseBenefit" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxExpenseBenefit" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="EffectiveIncomeTaxRateContinuingOperations" xlink:title="EffectiveIncomeTaxRateContinuingOperations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="EffectiveIncomeTaxRateContinuingOperations" xlink:title="presentation: IncomeTaxDisclosureAbstract to EffectiveIncomeTaxRateContinuingOperations" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>10
<FILENAME>image0.jpg
<TEXT>
begin 644 image0.jpg
M_]C_X  02D9)1@ ! 0$ D "0  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 0N!WP# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#W^BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBD) H 6BF^8OK2
M>:GK0 ^BH_.3UH\Y/44 244SS4]:7S%]: '44@(-+0 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 44A8"F^8OK0 ^BH_.3UH\Y/44 244SS4]:7>OK0 ZBD!S2T %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !110: "BD%+0 E+5*^O%MADFJ*ZRA_B%-(3:1MT5
MB_VPF?O"E_M=/[PI\K%S(V:*QO[73^\*0ZPG]X4<K#F1M45C?VNG]X4'6$Q]
MX4<K#F1LT5BC6$Q]X4HU=#_$*.5AS(V:*Q?[83^\*7^UT]11RL.9&S16+_;"
M9^\*7^UT]11RL.9&S16,=70?Q"C^UT]11RL.9&S16-_:Z>HH_M=/44<K#F1L
MT5C?VNGJ*/[73U%'(PYT;-%8W]KIZBC^UT]11RL.=&S16+_;"9^\*/[83/WA
M1RL.9&U16*=80?Q"@ZP@_B%'*PYD;5&:Q?[83'WA2?VRG]X4<K#F1MT5F6^H
MK*P -:0.0#4M%"T44'I0 45E76IK!)M)J)=80C[PJN5BNC:HK(&K(1U%1G64
MS]X4<C%S(VZ*Q/[83^\*7^V$QG<*.5AS(VJ,UBC6$Q]X4G]LI_>%'*PYD;>:
M,UB?VRG]X4?VRG]X4<K#F1MT5CKJR'^(4[^U%]11RL?,C6HK,&HKZTIU%0.H
MHY6+F1I452M[Q9FP#5VDU8I.X4444@"BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HI&.%)K)EU5(YBF1Q32N%S7HK%_MA,_>%+_:
MZ?WA3Y63S(V:*Q3K"#^(4O\ :Z?WA1RL.9&S16.=60+G<*:NL(3]X4<K#F1M
M457M9Q.F0:L5)04444 %%%% !1110 4444 %%%% !1110 45%/((H]QK+?5T
M5L;A32N)NQLT5BG6$_O"C^V$_O"GRL7,C:HK%.L)C[PH_MA,?>%'*PYD;5%5
M;.Y%RFX&K524%%%% !1110 4444 %%%% !1110 4444 %%95SJ:PS;"141UA
M,XW"J46R>9&U16,VKH/XA0-73U%'*PYD;-&:QSJR 9W"F?VRG]X4<K#F1MT5
M5L[D7"9!JU4E!1110 4444 %%%% !1110 4444 %%%5[NX$$>XF@"QFL?4M0
M%NV,U4E\01H<;A7'^(-?$DAVO6]*FY2U,:E1*-T;5WXD$0/SUAS>-51B/,_6
MN'U75G(;#UQMW?S%R0YKNCA4SD6(=SV+_A.ES_K/UIX\<+_ST_6O#OM=QNSO
M:IA=S[<[S3>%0Y8BQ[E!XT5SCS/UK9M/$HEQ\]> 6=_,&&7-=3INKNA7+T/"
MJQ*Q#9[UIM\+CO6MFO+_  [XA5"-SBNNCU^-_P"(5PUJ3C*R.RG431T5%5[2
M<3Q;@:L5SFP4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !15:[N!!'N)K/&KH1]X4U%L3:1LT5C?VNF/O"A-81G W#FGRL7,
MC9HID3[XPWK3ZDH**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBFNVU2: '4C$!2:RKG5$A)R169<>(XT5AN'2K4&2Y(FU'5A;NP
MW=*YVZ\5K%GY_P!:Y[7==\R1BKUPNI:E(V<.:[:>'N<DJUCT=_'"AL>9^M+_
M ,)NO_/3]:\5EO)R^=QH6\GR/G-=*PBL9/$M'NMOXP5R/G_6MF#Q"'4'=7@E
MEJ$JL,N:ZNRUA@B@O64\,D$<0VSW?3K@7$ ;-7:\_P! \1HEJ%9QFNBBUQ).
MC"O/E!IG=&::-ZBJEI="X'!JW4-%W$[TM)WI:0(****!A1110 444UVVH30
MZBLQ]256QFC^TEQU%5RL5T:=%9G]HKCJ*3^TE]11RL.9&I167_:2^HI!J:GN
M*.5BYD:M%9?]I+ZBC^TE]11RL.9&I167_:2^HH_M)?44<K'S(U**R_[27U%'
M]I+ZBCE8N9&I167_ &DOJ*7^TEQU%+E8<R-.BLK^TU]12_VDOJ*.5AS(U**R
M_P"TE]11_:2^HI\K'S(U**R_[27U%']I+ZBCE8N9&I169_:2^HI&U)0.HHY6
M',C4I*S?[27&<BG1:@LD@7-*S'=,T!2T@Y%+2&<9XWOC9Q YQ7#PZ\?[U;'Q
M8N3;VZX->3IJ9$8.ZNJA"YR5Y69Z'_;QW_>_6I/[=/\ >KSA=58O]ZI6U5@/
MO5U^Q.;VIZ"=>_VJ:VO'^]7GBZLQ_BH&JL3]ZDZ0*KK<]%&O''WJ1M>.W[U>
M>#5FS]Z@ZJ2<;J%1U'[4]"77CM^]3EU[@_-^M>='56'&ZC^UF'\5-T1QJZ'H
M@UXY^]3O[>_VJ\Y.JL/XJ0ZNV/O4_8:B=4]$_MX[OO4\:]S]ZO.!JK?WJ7^U
MF_O4.@'M3T5]>.?O?K1_;W'WJ\Z_M5C_ !4G]K-_>J?8#=4]&_M[_:H.O<?>
MKSE=68G[U(VKMG[U2J.I+K'HXU[C[U U[_:KS@:NW]ZC^UF_O5HZ(E59Z.->
M_P!J@:]S]ZO.#J[#^*C^UFQ]ZE[(/:L]$_MX[_O?K2G7CN^]^M>=#56Z[J=_
M:K==U/V)2J-GH;:\<CYOUI'UXX'S5Y[_ &JQ_BI/[58_Q4>Q#VC/1/[>.W[U
M,_MXY^]^M< NJL3C=3'U0@_>K*5*Q<:I[!H.K>=<(-W>O28CF)3[5X)X.U R
M7\0SWKWFV.;:,_[(KBJ*S.VF[HEJ.:01H2?2I*RM<G,%J6![5"W+.!\2:SY5
M\RAN]9<&O';]ZN4\4:J3J3?-WK&35F7C=7H4Z=XG#4J69Z8NN_*?FJHVO$N?
MG_6N!;6&5?O5#'JK,Q^:M_8&'MCT5M>./O4[^WCL^]7G?]J$MC=2_P!JMG&Z
MI= %5/0UUX[?O4P:\?[U<!_:A!QNI&U,@CYJ7L2E5/0?[=/][]:3^WCG[U<"
M=3./O5&VJ$#.ZFL.5[6YZ7#KO^U5E=<Y^]7E\>KL!]ZK":RV,[JET!^U/44U
ML?WJ636QC[U>8#7&'\5+_;C'^*E[$2JZGK^B:TAN/F>NL&K0G^(5\^V?B%H)
M-V^MJ#Q:Q;_6?K6%2@[FT*R2/:QJ,1/WJLQ3+*.#7D-KXG+2 ;_UKO\ P]J2
MW$>2PZ5A.DXHWC439TE%,$JGH13^M9&@4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110!!=S"*!R3VKRG4]<V:I(H;H:[OQ/>?9K1CG'RU\_Z
MQJ[?VI(=W>MZ4+G/6J6.[.O'=][]:=_;W/WOUKSG^U6QG=2?VNW]ZNR-*YQR
MJW/17UXY^]3O[>.!\U><KJK'^*C^UFS]ZK]B+VK9Z3+KW[K[U1P:Z=X^:O/#
MJ[,,;J(]58,/FK.5&R-:=0^B?#%U]IM-V<\5T%<)\.;L3Z9DGM7=UY\E9V.Z
M.P4445)04444 %%%% !1110 4444 %%%% &9KDWD6#/7E]UKI$Y&[O7?^-)O
M)T21O:OGVYU9C,WS=ZZ*,;G/6=COVUX\?-^M!UXX^]7G0U9C_%2C56/\5=?L
M3F]I8]$;7CM^]^M)_;QV?>_6O//[5;INH&JMG&ZFZ0O:,]Z\)ZLDUOAFY-=@
M#D9KP'PGX@,=_%#OZFO>+.02VL; ]5K@K0Y6=M&7-$GHHHK(U"BBB@ HHHH
M**** "BBB@ J.:01H2?2I*Q_$%R;>S+ ]J:U X'Q!K?E:J5#<9K/.NG>/FKC
MO$FK,=39MW>LU-58KG=7?3IZ'#4DST2;7NGS?K2KKW ^:O.'U9B?O4#5V_O5
MHJ6IBJCL>E2Z[^[^]59=>.<;JX ZNS#&ZHDU5C,!NI2II(N%34^B?"-U]IL]
MV<\5TM<+\-YO-TS.>U=U7G2W/06P4445(PHHHH **** "BBB@ I"<#-*3BJ]
MQ.J0L<CI0@&2WT<75JYSQ)K4269VOSBN=\2>(?L[, _3WKS[5?%#W"E-^?QK
MJIT&V<TZRL7=0U^02'#'\ZP+G5Y)FR6-4)KDR1ELU41MPS7I4Z-M3AJ5-"Q=
M7+/WK/D3=5DC=2%:[(P.5S*XB&VI/+'ETIZXH![4-"<KB1#;5@7#1XQ3%7FG
MR)Q4V"#U-*RUB6)A@FNHL=??"Y8_G7 CY35N.\,8'-<U6E?4[*<VCZ'\.:S$
M]@NYN:Z"*^CD/#5\_:5XH>! F^N[\/\ B'SY4!?K[UYDZ#6IWPJIH]0!R,TM
M003J\2G(Y%3]:Y3<**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH *1C@9I:BG8+"Y]!0)G,^*=42"T(#<BN%CU[Y?O?K5#QIKQ^V20[^AKB%
MU9@<;J]"E2]TY:D];'H_]NG:?FI+773]J0%N]>>?VLW3=2IJI2=#N[TW2T,N
M?4^E=)O$N+2/!R<5I5YWX#U4W:HA;.*]$K@DK,[H.ZN%%%%24%%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 444A('6@!'<(N369>ZG%'"WS4NKW
MBPV;-N'%>4ZYXF*%U#]_6M:=-R,JE11-#7=<P[;6KB=0U^7G#'\ZS+S66N'/
MS9K-FD\P5Z,*2..I4LBU-J;R]35*60N*KY^;%25V4H6.*=09Y8(IJ1C-29QQ
M0>#739&+;8+\IXJU%=.AZU!CBG,N$S6-2-RX-HUK77)8I H8X^M=;IFOL0,M
M^M>9EMIS5ZSU$Q]ZXI4=3KA49[_X:UA'7YFKJXKI)ONG-?/^C>(F@(&^O3O"
MFLB[<!G_ %KAK4FG<[:=6ZL=T*6F+(K=#3ZY3I"BBB@ HHHH *SM3ODMX&!.
M#6C7F?CW6&LY2@;%5"-W8F3LB.ZUL><V&[T@UL%?O5YL^M,[L=W>DBUHEB-U
M=RIG*YGI?]MC'WJ3^VQ_>KS9M:8-C=31K;;OO5HJ5S-U3THZV-OWJ:FN#^]7
MG#ZTW]ZF?VTP_BIJB+VIZ8-<&?O4G]MC/WJ\T_MML_>J0ZRVW.ZCV(O:GI/]
MN#^]1_;@_O5YG_;;?WJ4:VV/O4>P'[4]+_MP?WJ0ZX/[U>:?VVW]ZD_MMO[U
M-T!>U/2SK@Q]ZG#6QL^]7F8UIB?O4O\ ;;9QNK-T1.J>C_VX/[U.77!_>KS0
MZRV?O4IUIA_%2]B"JGI?]N#^]2_VX/[U>:?VTW]ZD.M-C[U-4="_:GI1UP?W
MJ!K8S]ZO-/[:;'WJ4:TV/O4_9$.J>F'6QQ\U-FUP;!\U>:KK;'^*D?6F/&ZE
M[(2JGIJZV/+^]5K2-8$VH(F[J:\J&M-L^]6KX4U<RZ_$F[J:SG2LKFM.I=GT
M+&<QJ?:G5' <V\9_V14E<)WGD'QE_P"/=*\=4'R17L?QD_X]TKQX'$ KTL(K
MH\[%.TAD0.^GS9'%$/W\T^9<G->DHG Y%=<BEP13@N33BO2DX:BYAF".:;SF
MIRORU'MIJ <PTY-+M)I^VG@8%/D17/H1;2:9M).*G'%"CYLT^43F1!3G%!4Y
MJ;'.:#US5<BL',1;2*0J:F(S2'FI<-!\Y"J$<TC(2:L=J3%1[,AR(-AI=AQ4
MV*=CBFHB4RMM)H"DG%3*.: ,-1R*Y7,1[3G%+@CBI.^:#US5<A2G8CVD4;2*
MD(S0>:7('.1X(YIK@[<U*W(Q2./W593AH.,]3K_ H)U"(^]?15K_ ,>L?^Z*
M^=O G%_%]:^B;7_CUC_W17CXA6D>MAW=$U87B89L6^E;M8?B3_CR;Z5C#<W>
MQ\W^)23J[#WK'8$2 5L^)/\ D-,?>LF09D!KV:,=#RJ[U$D!I$4K4K#.*".*
M[8P./F&!3G-*5/6GBAL8Q2< 4B, DYIQ!-.4?+0.*A15RE+03DU&X/2IAQ32
M*UY1J9$ 0*D4GI2XXI!UJ7 ?.(Q(I-Q'>GL,TS&:ATR5-B[SZU-'.R<YJ+9Q
M3'SC%1*F:*9JP:F4<'=79Z#XK^S*%W_K7F.UJEBDEC88)KEG2OH=%.KJ?0FD
M>)!=,HW]:[BUD$D"MGK7SKX=U9H9$W/WKV/1-=66V1=PKAJTK;';3J7.NHJ*
M"3S$W5+7,;A1110 4444 %%%% !1110 4444 %%%% !1110 4444 <-\0)O*
MLSSVKYZO\R7[GWKW;XGR;+/\*\*D^:<M7?AXWB<&*>I'M.,4W8:G]Z.*]&G#
M0\YRL,1"*:R$5.*1AFMN0(R($4DT/E:EC'S8IDXXK*<-#6$]3UWX::EY=LL>
M>M>P1G=&I]17SSX!N2EU$F>]?0=J<VT9_P!FO%Q$;2/6I.\2:BBBL#4****
M"BBB@ HHHH **** "BBB@#E?'O\ R+\OT-?--QGSW^M?2_CS_D 2_2OFJX'^
MD/\ 6NW"JYRXAV(D4TXH13Q3G(Q7K*F>;*9%M.,TJH2<U(<;*%("T2IZ"YRS
MI-R;?6(3GH:^C_"VH?:[./G.%KY@C8B^1QV->Z?#W4,P*I;M7FXJ&ESOPTST
M^BFHVY :=7G'<%%%% !1110 4444 %%%% !7/>*QG3V^E=#6%XG&;$_2JAN*
M6Q\V^(U/]I,/>LR/(7%;/B5?^)FWUK)"\UZ]*-T>56GJ1E3FG.A4 T_J14DH
M!45T\AS<Y6"G&:=#&3,#4A&$IULP\P"LZL?=-*4KL][^&(QI7X5Z!7!?#/\
MY!?X5WM>)4^)GLP^$****@H**** "BBB@ HHIDK[$S0!%>2B*W9L]!7G^L^)
MA"LB[_UK9\0ZXL%K(F[M7B>NZH\TLF&/)KKH4;[G/5J6$UO63=S,-W>N=D4L
M<U#EVE))/6K>1LKT:<+'FU*A"&XVT*-O%(!^\S4C#)KMC'0PE*Z#.*&.!2$4
M,,BK,AN,G-/"<9I%'%2Y&S%#0DQ@..:'DR*3M3=AJ+%Q(R_-+R:8R$&IHUXH
M<;FJG8;"Y68<UTNE:N;.=/FKF<8ES22NWF @FN6K3T-X5+'O.A>)Q<>6F_\
M6O0[6020*V>HKYJ\,ZD\4R;F/!KVW1M>22WC3<.E>36I6>AZ%&IS+4ZZBHH)
M/,C##O4M<QT!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %96M7/
MV>U<Y_A-:M<IXRF,5DW/:KIJ\DB9NT;G@GBNY,NKRG/>L(*>M7=9<R:G(?>H
M%QC%>Y2I^Z>7*>I'SFD).]3Z5(12;:)4]#/GU/5_A9/NNMN>E>T5\_?#6^%M
M?\GO7O5K,)H X[UXU96D>I1=XD]%%%8FP4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !6=JUT+6V+YQ6@QPI/I7GWC'7ECA>(,,BKA&[)G*R,#Q#
MXJ^1HM_ZUYGJ5\;AV.:AU:]DFN20QQFJ(W,.:].C2L>;5J79&K'?5O\ AJL$
M^:IRV% KMC#0YISNA"F.:0&I&.8ZA K6*T,+7%SS3\9%,(Q3@V!BJN4D('YQ
M0\ORXJ/:<DTA4FI8T@^\*0*5-31QXYHD%39!S69+;2E"#FNR\.>(/L4HRWZU
MPZ=*:D[K)P3UKCK4[G32G9W/H_P]KHOG4;LY]Z[$'(KP/P7K)@N$#/7LFGZJ
MMR%PV<UYE6FTSTZ<[HV:*0=*6L#4**** "O%?BEG[;^->U5XU\3X]UT36U#X
MS*L[1/)PQRU1K(5<\T\\.U1["QKUH1N><Y#WD/7-(CGK2.A"8I(QQ6T8&,I$
MI)/-)DF@<<4O2JY2.=C1G-/W$C%-'6@=<T<@<XTD@XI=Q'>AASFDQ5J"%SL"
MQI-Q]:7&:3%3**'S,<"0,TH))S2'[N*5>!BHY!<S%.:3)-./2F@8I* ^8 32
M%C1WI".]4X%\^@H)H+$#%"CO2.,TN0B4A%<B@L<TW%.QFDX"4AQ8A*U_!+D^
M)H?J*R&7]WBM7P2I'B>'_>K"K&T6=&'=V?4MM_Q[1_[HJ6HK;_CUC_W14M>*
M>P>1?&/_ (]EKQLG]R!7LGQC_P"/9:\;A^9<5ZF"V/,QFX^/A<U-P8R:B8;5
MI5/[LUZR5SS6-C[T^H@<&GL<"DUJ.XX8S1@9J/=3L_+FG8!QQFBH]U.!XI6!
M["-3ATIHY- ^]5):"''I2#I2?Q8I>^*:0"KTI!U-*>*0\4[#N(.M.[TAZ9H_
MAS2<26*>M&:;GBD'-)QU$/%(U(IYI!RU3;4I#OX:!]VG=L4WOBKL%Q5Z4@ZT
M=*#Q18=P'+4LH^6E2DE^[651:%1W.L\#\:C%]:^BK7_CUC_W17SSX&7_ $^+
MZU]#6O\ Q[1_[HKP\5\1[.&^$FK#\2#_ $)OI6Y6-X@&;-OI7-#XC>6Q\W>)
M1C5V^M91&>:V/% QK3#WK,Q7NX?8\>L]1BCBD7K4F,"HNAKO6QR=11]ZD_BI
MQZ9H XS4-"%IIZTZDQFHL-,5N@I#]VEZBFCKBK07%_AH'W:3^+%*>N*; 5>E
M(HYHSBE/ S26I0_ J%A\U.5N:']:)1%< HIQ08J(-4JG*UDX%QD$-RT,@P>]
M=WX9UUE=59OUKS\KSFIK+4&MY^#WKDJTKH[*4SZ>T/44GME&>:W*\D\$ZV93
M&K-7K$3AT!!SQ7D58\K/1IRYD/HHHK,T"BBB@ HHHH **** "BBB@ HHHH *
M*** "D)P,TM17#;8&/H*$!Y;\5[D?90 >U>+]3FO2/B9>^9E<]*\WAY05[.$
MA9'EXF5V//W:0=*#][%!XKTHQ//>H TJ')IE.3K5M6 4</FF2G-2S#"9JJ#N
M-936A<'K<ZGP;+LU6%<]Z^E++FSB_P!T5\O>%Y=FNP#/\5?3NG.&L8<'^$5X
M6,5I'LX=WB6Z***XSH"BBB@ HHHH **** "BBB@ HHHH Y;QY_R )?I7S9./
MW[_6OI3QT,Z#)]#7S=<C%PWUKT,$CAQ9":*<PZ4$<5[D(GE-ZC::V<5(1Q0%
MR*<EH),AC'S[J]*\"7^R15SWKSS9A:Z#PI=F&]C&<?-7F8B-T=M"5F?2MFV^
MU1O45/5#2)1)IT1SVJ_7C/<]9;!1112&%%%% !1110 4444 %8GB09L6^E;=
M8WB$9LF^E5#XD3/X3YT\3#_B9M]:Q\<5L>)S_P 3=A[UCMUKZ"@O=/&K/4:.
MM2#GK28IQX%;6]XY6[,8_2HH"?/%2/TI8%_> UG77NFM%ZGOWPS_ .05^%=]
M7 ?#+_D%?A7?"OGJGQ,]RF_=0M%%%0:!1110 4444 %9.KWR6]NV36H[!5)-
M>9^-M9\A9%5JUI1YI$5)61QWB_7&:5E5N,^M<"TS2N2?6IM0OVNIR2<\U7C7
MC->S2IV1Y56>H\J,4A.1BF[NU+'R]="5CCD[L<!A*5.E)(<'%(IQ70M@''K1
MC--8\TX=*E$B=#3=WS8IS=*C7[U%P2)AUJ4 5"3@4*]2QBSJ.U"8"TK'<*K[
MR&Q5Q6@TQ[_>I-N5YH')I6XXI5(70)ZDUE,86R*[;P[K;B55+<9]:X!3BM'3
MKPPR@Y[UYU:F=E*=CZ6T._2>T09YQ6U7E7@G6?-E2-FKU-'#J"#7D5(\LCU:
M<KH=1116984444 %%%% !1110 4444 %%%% !1110 4444 %<+\0YO*L#SVK
MNNE>8_%6Y"6'![5M05ZB,ZK]QGB%VWF7['WIHXDIBG?,6J=ACFOH*:T/&E*S
M!NM*1\M(O(S2D_*:N2T,^;4U?#5V;>^7!_BKZ.\.RF72HV/<5\OZ5+LOD_WA
M7TOX1D#:)%SVKP\7&S/5PKN=!1117$=@4444 %%%% !1110 4444 %%%% !1
M110 4444 %(3@9I:K7<PBMW).,"@393OM4BABD!;G%>!^,-8>;4Y55N,UU'B
MOQ&T$DBJ]>77-R;R[9R<YKMP]/4Y*U2ZL0G+G)J1  *1EP:C+X;%>K&%CSY,
MFP,5"^<T_=3@N:UN9=1@/RTY<9I&&*8V0*'*Q?*22D57+_-2_,R]*C5&)Z5F
MYZARELD;!2J :KJ6)Q4T9.ZFI7"42?@)4)YIDDAWXH!YIK4R:'+PIJ%!^\)J
M9^*0KM&:F<;EQ=B[I]Z]M< @XKUCPEK>\H&;]:\:;Y5W5T7AW5F@F0;JXZE.
MZ.VC4/I:VG6:,$'M4]<SX4U 75H"6SQ735Y4E9V/2B[JX4445(PKR+XEX\]J
M]=KQSXG/BY(K?#+WS&O\!Y)(<2-]:E@P3S564_O&^M/A<@U[,-SRY$\H&:B4
M4]SE<TT?=KH,+B-]ZE>D'/-)UI$W%/2@_=I!R:0GM5H1(.5I!TI%/:@]:I Q
M5[T <T'BAN!6<D4GH(/O4'[]';-';-%M!7%8\TIIF:7.:$BA#3OX:C[U(IS3
M>P=10/EI.U*:9WH2$]A,4Y.M-?BE!P*;6@;HEP,5K># /^$GA_WJQG;]WFM?
MP0<^)8?]X5RUU[C-Z'Q(^H;;_CVC_P!T5+45M_Q[1_[HJ6OGSVSR#XRG%LM>
M/6X_=@U[#\91FV2O'X3^Z KU<%L>9C=R1N12QKE:9GM4B-BO7B>6V,>/!I",
MU+*PJ,4VM0N-VTN.,4[I2 \T) V-VT'Y14E,8;J:0[C8^M2;><U&AP:DW\46
MU ".]-Z\TXMD4WH,4^HQ>M'6D!Q2CBJL =>*0\#% /S4-0UH BCBE"XI <4_
M.16;)ZC0,&G[,#-(#S3RP*XI#(BU'7FFMUQ3ATQ3&'6DZTO2A10 H.*CD;M3
MCQ43<FLJNQK32.X\#?\ ']%]:^A;7_CVC_W17SUX'_X_X?K7T+:_\>L?^Z*\
M'%?$>OAOA)JQO$!Q9M]*V:Q?$7_'DWTK"'Q(WG\)\Z>*?^0PQ]ZR@>*T_%)_
MXFS?6LE3\M>[05D>+5U8_.148&2:4' H4XS76F8M#<Y.*</2HU_UF:D/7-42
MQP'-/VX%,4\U(7!%9V(9'TIH'.:"<FE[50#3US1UYH)XQ2*>,4(: GFG9W"F
MXI5X-"*8JKS2MSQ2YXS3"?FJN@D(5I5.#BG$\4BC)HM<:"3Y5JF%S)FK\RY6
MJJC#5E4AH;PE8['PUJ!LV0YQBO<O#&H_;K,-G/%?-<-R8P #BO7?A]K06W6)
MFY->1BJ>ESNPU36QZN*6F1MNC5O44^O..Y!1110,**** "BBB@ HHHH ****
M "BBB@ JM?G;92GT6K-4]4.--F/^S36XGL?._CNY\VZD7/0UR<1P@K=\5,9-
M2F'^U6$H^7%?089>Z>-6EJ28XS1C(S1G"8I WRXKM.411DTI^6FH>:64\"H;
M >YW1XJ!%^>I$Z4BG$E&Z)B]2SI<WD:U"WH:^DO"M]]JLHQG.%KYEBR+]&'8
MU[[\.IC):@$]!7CXV/4]C"RZ'H-%%%>8=P4444 %%%% !1110 4444 %%%%
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
MI*%P\8(]*DK.T>;SK16SVK1KQ&K.Q["=T%%%%(84444 %%%% !1110 4444
M%%%% !11368*,F@#$\17ZV^GRC.#BOG?Q'?/<7<F3_%7J?C[5_*+QJW6O%KR
M7S9V/J:]'"TKZG!B:EB 9ZU- ?GYI ORTT':U>O"'*CRW*[)I,>956X^]Q5C
M.1FH?+:608&:RJ3L;1C<=:6SSN !7::1H4C;25_2F^%M&::1=R=Z]?TWP\B6
MZ':.E>=5K6.ZE2,SP]HJJ5W+^E=<NE0C^$5):60@Q@5?KAG-MG9""2*(TZ,?
MPTOV",]JNT5%V59%!M-B/\-9NIZ/$T!PHKH:CFC\Q<549M.XI131XSK^AG#;
M5KS;4M-EMYCD'K7TM=Z,D^<J*\U\9>'Q"'*I7H4L1=V..=#2YY$^<@5.ARM+
M+;.DK!@1@TD7!(KT*<KZGGU8ZC"?FQ4H&5J+K+4H^]BM)ZD15F.M)S!=*0<<
MU[A\/]3\V(!CVKP>4[9017H_@#4O+D52W>O.Q-.Z.^A4L>\JVY<TM5;&82VR
M'/:K5>4ST4%>._$R!I+PXKV*O/?&=A]HG)QFKI.TB*BO$\,:R?>>*22R?'2N
M[.B'<?DI#HA/\%=\:IQRIZ'"FQ?R^E(+%]G2N[_L0XQLI5T0]-E:>V(=(X,6
M+[3Q2)8OSQ7?-H9'\%,_L0C^"I=42I'"K92;NE*+)]W2NZ&AG^Y1_8AS]RJ]
ML-4C@I+&3TJ+RFCZUZ')H9\HG97+ZK9?9V((Q6]&K=F%6G9&)FGYJ+/S4Y37
M98Y+6'L?EI%0LN!UI,Y;%6]/C\V[5/6IF[(N*NRLMFY;I3Y+)QCBNU31"2IV
M5+/HA^7Y*X)5=3K5/0XA;*0CD4@L7W=*[S^Q"(Q\E-&B'^Y4^V*C2.&^PONZ
M4/9/GI7=?V(<_<I#HA/\%#K%^R.%-D_I2M8N1TKN?[$/]RG+HA)^Y4>W#V5D
M<*M@X'2M7P?:.GB>$D=ZZD:'_L59T'1S#KD;[>AI3J7BPIT_>/:+;_CVC_W1
M4M,A&(4'M3Z\P](\@^,JYMEKQVV;Y0*]F^,(S;+7C$0V\UZN"V/,Q>Y-U?%(
M_P O%$?,F:6;EJ]:#U/-:&*<TC+BGJ,4I&:8EN, P,T$<9IW48H/3%-,=AJC
MC-+G-*!\M"KQ0V2"G-.#YXI@&W--!^:E<=A6/S8I1P*7;DYI331+%!P*;WHH
MH) G%-/(S2D9I3]VF6MAR)E,U&XP:GA/[NHY%R:8QF_BG*<TPKBE3K4,=AQ.
M3BFGCBEQ\V:#R<T"$Z&E;@4F,FE/(H%8=%P<TR;DTY3BD<9&:RGL;01V?@;_
M (_H?K7T+:_\>T?^Z*^>? __ "$(?K7T-:_\>L?^Z*\/%_$>OA=B:L7Q#_QY
MM]*VJQ?$/_'FWTKGI_$CHG\)\W^*3_Q.7'O66IXQ6GXI'_$Y8^]9@%?145>)
MXE?<#P:#Q2D9-(XXK9HYKCU/&:CDY.:>HXIKCBIV%U%3[F:3=S2*<(:A+X-'
M,:<MRRIS29^;%1+)BC?@YJ92'RDN?FQ0QYQ4/F?-FEWY.:+ARDOW32L>*B,F
M:-^1BM(RT)<=10<&IU7(S5:K"-\N*7,#0UFJ/;GFGL.:51Q5(+Z$>:>#D8I"
MF#0!CFGNA7T$*Y.* /+<&G=\T.-PK"K"Z-:<K,]-^'NJ["J;NM>UVS[X%;U%
M?-?@^X,%[&N>K5]&Z6V[3XCZBO#Q,;,]C#NZ+E%%%<IT!1110 4444 %%%%
M!1110 4444 %>8_$B?RU(SVKTVO(_BI)M?&:VH?&C.J_=/'[EMT['WH3D4UO
MFD-/48%?04]$>!7>H'K24IY-+BNBVA@B,_*:E!P*B;DT[/%9V-'L*_K35;!I
MS?=J,#-:I:"2'2_,A-=[\-=1^SRA,]37!N,1D5O>#Y3%?1C/5J\S%1NCNP[L
MSZ9M'\RV1O45-5+2CNTZ(_[-7:\1[GL+8****0PHHHH **** "BBB@ HHHH
MYCQS_P @&3Z&OFV[/^D./>OI+QS_ ,@&3Z&OFR[_ ./EOK7HX(X,9L1]*7IS
M3>M*>E>W$\GJ)GG-.S\N:;C-.Q\N*;0,!R,U&[9J91A*@8?-4R6@[DUC-Y%R
MAS_$*^@?!&H^=8Q)GM7SLP*NI]Z]A^'%[ODCCS7D8N&EST,)+4]BI::*=7EG
MIH****!A1110 4444 %-?[C?2G4U_N-]* /FKXC?\C*_U-<PK87%=3\1E_XJ
M-S[URH'&:^APC]Q'C8GXQ<\4U>&S2CFC'-=MSD)2?EID1_?"EZC%)$/WHKEK
MK0VI;GOWPR.=+_"N_KS_ .&(QI?X5Z!7SU3XF>W#X4%%%%06%%%% !7GWQ(O
MOLMEP>HKOI6V1LWH*\7^*>H^;#L#=*UHJ\C*J[1/,+@_:+II/4TUOE&*2!OD
M!-#_ #5[M&.AX=66HW=Q0HWFDV_+4EN,9K>PHB2G:M1Q-EZEE7?4.WRSFF]$
M%A\IYIUNA?M2PIY[@5V6B>&VN(PVRN2I529T0@V8MGIIEQ\M;,/AW(!V?I78
M6'AHQD93]*Z*'1@JCY/TKFE71T*DSS4>&MO.S]*'\/97[M>I'21L^[41T<8^
M[4>U17LF>/W.@^4"=M8MS;F,XQ7M5[H.]#A/TKE;[PJQW-L_2FJRN3*BSS"9
M"*(GYQ6]JNE&WW#;C%<^%V2UVTJET<LX$S')Q49^6C/STYER:ZD[G.]Q,TJC
M%&RG+SQ2D@8Q3AZA?F7-38^?%(T?.:SE'0VIG=^#-=-ELAW8S7MFBWGVJ%6S
MG(KYAT^9H;U#G&#7OW@.\^TVRC.<"O%Q,4G<]2A*^AW%%%%<9U!1110 4444
M %%%% !1110 4444 %%%1SOY<1;TH \P^*%SY2[<]:\1EYF9O4UZA\3KWSI,
M ]*\M#;VQ7KX./NGE8E^\QPZT\OM%*B9--="7Q7I1.!K416W<U)]X4S;LXIR
MG@U1;0B-DD5J^'Y?*U '/>LE5PQ-6+&7RKH-GO7+76AI2=F?3'A63S-,4^U;
M]<IX$E\W15.>U=77@U/B9[</A04445!04444 %%%% !1110 4444 %%%% !6
M9K=S]FL'DST%:=<?XTO?+TN1<]JJ"NR9NR/'O%^KFZNF^;/-<:&WOFK>I2F:
MY;G/-553::]S#1LCQZ\KDX^[43?>J4=*8PQ7;)V1R16H \8K>T'3?M4Z#;G)
MK'LXO.F"UZGX.T3YHW*UYF)G8]"A"[.H\/\ A\6R(VWM7<0($B5<=*;;0JD"
M#'05/7E2DY'IQC8****@H**** "BBB@ Q7.:]I0O5;Y<YKHZ:R!NHJHRL[B:
MN> >*] ^P,Q"XS7!S Q.:^@_&VDBZB)5>@KP_6K$P3,,=#7IX:K='FUZ?O&4
MO7=2Y^:FI_=I<?/BO1B[G'+1B2#<<UN^&[W[+<)SCFL-^#BI;60QSH<]ZRQ$
M=#6D]3Z1\+W_ -IMT&<\5U->9?#V[\W:N:]-KPJBM(]:F[Q"L;5+ 7+YQFMF
MD*@]:S1;5SD/[#&?NTG]A#^[77^6OI1Y:^E7SL7*CD?[#']VE&AC/W:ZWRU]
M*/+7TI^T8N1')-H8)^[2?V$/[M==Y:^E'EKZ4>T8<B.1_L,?W:/[#']VNN\M
M?2CRU]*/:,.1')-H8,>-M>5>.[3['<E<8YKZ!\M?2O$/BHH%_P >M=.$FW4L
M<V)@E"YYAW-(K?-3E'6E2,EJ]Z.IY36@TG!S6SX63[1K,:>IK&E7G%;_ (''
M_%0PY]16&(=HLTHJ\D>UPZ"#&AV]JFDT(-CY?TKJK>-?L\?'\(J3RU]*\!U6
MV>S[-')?V&-H&VD_L(8^[77>6OI2^6OI2]HP5-'(_P!AC^[1_88_NUUWEKZ4
M>6OI1SL?(CD1H8_NTJZ& ?NUUOEKZ4>6OI2YV'(CE/[%']VG6FC"*\63;TKJ
M=B^E&Q0>E'.[ H)"J,*![4M%%06>2?&%@+9:\;',8Q7KGQI8BW3%>06QW1#-
M>IA':)YN+CJ2(V#2LV7J!FQ)2%CNKTX2//Y2UD8H!J'=2[JJ4M1*(]3\U(3\
MU,)HSQFCF'8ES2AA4);Y:A\PYI.0*);?GI4/>I$.12 ?-1&0I(F3_5U&3S3B
M<+40.36RV,[#Z*:W6E-.Q-API'Z4'[M(Q_=U)20L;<4[<":KJ3MI8VYH<B^4
MGD'%1H>:<Y^6H8S^\K-S*MH3-TI!]VACS3<T<P<HY: >:831FCF%RCL\TYON
M5&#2R-^[K&K(VIQ.T\$<W\7UKZ&M?^/6/_=%?._@,YOHOK7T1:_\>T?^Z*\7
M$OWCU,,M":L7Q%_QYM]*VJQ?$7_'FWTK&G\2-Y_"?./BG_D+O]:RD/RUJ>*?
M^0P_UK(4U])AOA/"Q&Y,O2F'K2T5O8Y!PXILG2D8X%(>4K*;LC:.H^*$R)D4
MQK)R>E;VC6)G@SMK:31"1]RN>4[&\(G#FS? XI39OLZ5VO\ 8C9^Y2_V*V/N
M5G[1&RIZ'$?8WV]#2K9OMZ5VAT5O[E T5A_!3]HA<AQ7V1Q4?DLIYKM9-&8#
MA*S+S2I$'"&G[47(<YT-2(>:GN+&5/X34 C*+R*N-0R<+$AH#<U&6^0TV,GF
MMHR,)(LM@BHG/%"MS3&/-;(E#Q]RE3GBE3[M"_ZP4IJZ*B]30TJ?[/J,/./F
MKZ/\.7RW&G0J#SMKY@ED,5W$P[&O</AUJ)N8D0G.!7AXR'4]?"RT/2Z***\X
M[@HHHH **** "BBB@ HHHH **** (Y&V*6->*_%2Z$DP ->Q:F_EV3MZ"OGW
MQY>&>[(SWKJPL;RN<U>5E8XY1SFI#TIJC HKW8K0\*IJPS2YXJ,]:0M71?0E
M(D4;J:>#5FUB+H3BH)E*L:B^IH+U6D3[U-!XIPK5;#BA9:T= D\K4(?]ZLQN
MM6+!_+O(S[UY^(5T=-)V9]/Z!<B7380#_#6O7%>"[LS6L:YZ"NUKP)JS/8B[
MH****DH**** "BBB@ HHHH **** .8\<_P#(!D^AKYMO/]>WUKZ2\<_\@&3Z
M&OFR[_X^6^M>C@CAQA&O2D[T'@4=J]ZGL>0.6G=ZC[4X54D3(<3497)S03S4
MJC*9K-BN02C(&.U=W\.K[R=256/&:X5.6.:U?#EV;74@<XYK@Q4+Q/0P\K,^
MI+6831!A4]8'A>\%SIRL3GBM^O"DK.QZ\7=7"BBBD,**** "BBB@ IK_ '&^
ME.IK_<;Z4 ?./Q&Q_P ) _UKD5/R5U7Q&)_X2)_K7(J:]W#? CQ<2_?9(G%*
M.M(>,4K=*[XK0Y 'WJ=%_KA3?X:(O]8*QKJ\36B]3W_X9?\ (*_"N^KS[X8?
M\@K\*]!KYVK\;/=I_"@HHHK,L**** *]\=MG(?05\Z^/;HRW3KGH:^@]6F6.
MPFR?X:^:?%LWFZC*,_Q5UX6-V<N)?NF)'Q"*<IS31Q$*1.M>W36AXTR?'RTQ
M6V5)GY:JS$AN*U'%7+*L":9*OF<+4(8@5HZ1:O<W(&TD9J:TK(UC'4UM T22
M9U<J<5[7X6T>..T&Y><50\*^'D^PJQ49KM[.V%NFT"O KU;MH].C2Y=1BZ?$
MO1:E%L@[5/17-=G39$/V=/2D^S)Z5/11=A9%9K.-NHJK<Z9$T+?*.E:=(PRI
M%%V%D>0^)M#W%]JUYI?:8\,S9!KZ1OM*2=6) Z5YEXCT/9(Y5:[J%76QQ5:5
ME<\E?Y),&ITY%&J6SPW9&#4<1^3FO6HSN>9.-F2,P Q38NIJO*YWC%65X0&N
MB6Q+6@W($E2G!3-59"<YJ:-\QUA-Z&E,:ORR!AVKU[X9ZH%78S5Y$WW#75>!
M;J6.[4+G&:\C$GHT-SZ/C?>@8=Z?5336+6,9/4BK=<!W!1110 4444 %%%%
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
MSS7O?@G2OL5NI*XR*\;$O4]/#HZZUC\JW5/05-117$=@4444 %%%% !1110
M4444 %%%% !7*>,+OR=-F&>U=77F?Q#O?*BDCSU%;4(WG8SJNT3Q'4)?/OI#
M_M4@X45 3FYD/J:ESQBO=@K(\:L]2.5N*Z;P9:^9JD9QWKEI>*]&\ 6>Z>.3
M%9U9V3%25V=%XLT\"S)Q_#7D3ILGD'O7O?BN#.G,<?PUX/>G;=2?6C#SO$JJ
MK,K,.::R[1NIR'<:=(,KBMIZD(ZOP'<_\3F)<]Z^CH#F!/H*^7O!\WD:[%SW
MKZ6TJX\^U0Y_A%>+BU[QZN&E[MB_1117(=04444 %%%% !1110 4444 %%%%
M &-XANOLMDSYQQ7SOXINOM>J,<YYKW/Q[+Y6D,<]J^>;U_,NBWO7H8.%U<X\
M3*VA3;Y#M]:>HVBDD7<X-&>*]6&AYDM6,EXKI?!NG_;;]5(SS7-R?-M'O7IO
MPXL,7B2$5RXFI:)T8>%V>F:-HXM ORXKI@, "D50%'%.KQI2;9ZR5D%%%%2,
M**** "BBB@ HHHH **** "L[5K87%NPQVK1IDB[HV'M33LQ-71\Y^,=.\J]D
M.WO7)'Y82*]A\=:5\LDNVO([B/:Q6O8PL[H\S$0L58#Q4DG2F8V4N[=77)W.
M1:,L:;+]GNT.>K"OI7P?,)=$B.>U?, ;$R'T->]^ -5#V,4&[H*\O%K0]+#O
M4]&HH'2BO/.T**** "BBB@ HHHH **** "O#_BJF=0S[U[A7A_Q4?&HX]ZZ<
M)_$.?%?PSS$CK3(Q\YJ;K4>,&O?B]#PVPD.1BM_P-QXAA^HKG6/-=%X'/_%0
MP_45S8E^ZSJPWQ'TW;_\>\?^Z*EJ*W_X]X_]T5+7@'M!1110 4444 %%%% !
M1110 4444 <WXFLA=(!C-<X-$7:/DKT"XMQ,.:K_ &!<=*N,K$2C<PCI$?\
M96W8,XK$311S\M=_]G'E;*@%@OI6D*MB)4[G$'1%_N4G]BC^[7<_8%]*3[ O
MI5.L1[$XDZ*N/N4W^Q1_=_2NY^PKZ4GV!?2E[8;HG$#15_N5M:=I$:VS@H.E
M;WV!?2IHX BD"G*M=6"-*SN>4>)M+6/S"%KRC45V7+#WKW_QA:JMNQQVKP/5
MQB^<>]>AA9\QPXB'*5DZ4A^]3D^[36KTX[' ]&#<TV@<BG+UK7H),"/EJ2W^
M^!3:6$_OQ7/4=D:4U=GIOA331/;AMN:ZB315('RTOP]M%ETP,1VKMC8KZ5XM
M2O:5CU8T+HXB+15[I36T1=_W*[D6*CM2?8%]*Q]L7[ X?^Q1_=IK:*-WW:[K
M[ OI1]@7TI^W*5$X?^Q1_=HDT48^[7<?8%]*#8*>U)5P5$Y;1]&1)\LE0:KH
MJM=DA*[2&T6)L@4V6S61\D5'M/>N:1A96,OP_IR00_=YKH0,#%0P0B)<"IJS
MD[LM!6+XB_X\V^E;58OB+_CS;Z4Z?Q(4_A/G#Q3_ ,AA_K62*U_%/_(7?ZUE
M#[M?04?A/%K+4:_-$?6G#FA.#75$Y6A9!Q4<8^<"I320C]\*QK/0NEN>S?#G
MBS7->GJ/E6O,?A_Q;+BO4(Q\BUX6(?O'K4%=#QTHI:*YCK$I.].- H!H:101
MQ3J2@5B%HPU<]KNG++ WR\UTV*KW$ D0@UI"=F93A='SYXFTHPNS;>E<<IP6
M%>V>,]*'V>1@M>*S(8[EP?6O4H3NCSJL1%7FGTO&!BF,>*]"".22LQW:E'2F
MJ>*4GBM$[,@CD/RFMOP=<&&_&#_%6$_0UH>'G\N^3_>%<&*C=';AWK8^G]#?
M?ID;>U:58_AIMVC0GVK8KPI;GLK8****0PHHHH **** "BBB@ HHHH YKQ==
M!-(F3/:OFN_.Z]E/^T:]S\>7ACCDCSUKPN[YN&/J:]3!0ZGFXR1!VIR\&G./
ME%(>%KUXK0\UBL.]1PC=<J/>IC_J<TW3UWWJ#WJ9ST+IJYZWX.M<Z<_'\-<7
MXRB\J=_K7IG@^VQIK<?PUP'Q"A,;L<=ZX83O4:-90TN<0O*5(G3%16_*U*O^
MLQ7=3U1SR0O>HIOO U+)PXIDG45,UH5#1GI7PONO*NL$]Z]QB?S(PPKYT\%7
M)ANEP>]?0&DOYEBC'TKP<1&TKGM8>?-$O4445S'0%%%% !1110 4444 %%%%
M '+^.O\ D 2_2OFRZ_X^6^M?2?CK_D R?0U\V7?^O?ZUZ."1Y^,W(SS01Q2I
MTIU>U#8\F6Y%3UZ4G\5.K61+%[4(,4W/S5-QMH\RDM")SFDZC%(.6-.'6N:I
ML:TW9G3^"[PP:Q&">,U]%:?<BXMU(/:OEO1[@P:DK ]Z^B/!MT;G3P2<\5XV
M*A;4]7#3OH=11117"=@4444 %%%% !37^XWTIU(_W#]* /G'XBC_ (J!S[FN
M-[UVWQ& _MQS[FN*3D5[N%7N(\+%+WV.*Y%"=:EC *FHQ]XUZ,6<MM"1_N5%
M%_K!4F<TV+_7BL*ST-J.C/?/AA_R"OPKT"N!^&7_ ""OPKOJ^<J_&SWJ?PH*
M***S+"BBB@#Q_P"+,A6117DCC<,UZG\7FQ*M>5QG(KV<&KP/,Q7Q#$&&J>0_
MNL4P\&@G/%=\=#SFPA'[HYI8FPK"DZ+BHD)\P#U-.;T'#<ZCP98-<:CG&1NK
MZ%T6V$-B@QT%>3_#:P#W 8BO9XD$<84=J\'%3O*Q[6'A97)****Y#I"BBB@
MHHHH **** "BBB@#/U.V6:W8$5X=XVTDK=,P7C->_2+O7%>?^,M*$D4CA:Z\
M+4L['-7A=7/!60HQ%"#FKVH0&&X8$8YJIP!7LJ5XGE5%9D3?*V:L01^<0!4$
MPRO%;GAW3Y)YU.W(K.I.R-*4;G4^#]$)GC=E[U[=8VZP6Z #'%<QX7TA8H%8
MKSBNQ4;5 ]*\6O*\CU:4;(6BBBL34**** "BBB@ HHHH **** "BBB@ [5XM
M\4)RMX5S7LTCB-"37A'Q0N5DU+Y3WKIPOQF-=^Z>< ?.QIR]:51UH7[U>XGH
M>+/5C9$W8 KV'X>6>+6-B*\GMH_,F ]Z]W\"6H334.*XL1*R-**U-3Q+!OTR
M3C^&OGC6HC#>2?[U?36LP[]/D'M7SOXPM_)O6X_BK+"S-ZT# @&.34HY:F#
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
M*EKP#V0HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
M#WBU6O48_N#Z5Y=X _X]UKU%/N+]*\'$_$>QAU[HX4M%%<QU(****!B4M%%
M!1110 AKD_%G_'G+]*ZPUROBL?Z'+]*WH?&<]?X3YXU,XOYOK6;CY\UH:MQ?
MR_[U4L9%?04%H>-/<F3[M,;[]/0\8IC??KH9D+(.*ACYE7ZU.3E:A@'[\?6L
M*A<-SV+X= ^:E>OCH*\D^'@_>)7K@Z5X&*_B'N8?X HHHKF-PHHHH **** "
MBBB@ /2O/_B%J 7298L\X-=^WW3]*\5^(]XP>2//'-;4(WFC*M*T3R1B6F8^
M]3J?EQ4,8R2?>I:^BIJR/#F[L?;C#$TDGWB:>#M%-?D53T,T]0MANG KVWP!
M;8LU..U>+::NZ]4>]>_^!K?;IPX[5YF+GH=^'5SLHONBJVI+NMG_ -TU;B'%
M17:YA?Z5YB=I'?)>Z?.OC&#;J$IQWKEQ]RN\\<0;;F1L=ZX0?=KVZ#T/*KJS
M$0<4Y>*!UIKG!KK3T.=#)5[UW'PYNO)U1<GO7%/RM;?@^X,.ICGO7+B5=6.N
M@]3Z;M9?-A#"IZRM!E\VP5O:M6O!DK.Q[$7=!1114C"BBB@ HHHH **** .8
M\<_\@&3Z&OFVZ'^D.?>OI'QU_P @&3Z5\X7/^N?ZFO1P.YY^,(#S2]:1:5>M
M>Y$\I@?NXI!Q2YYH-.;L2T&TDYI#R:N00^9$2!5:2,QMS6?,5;08_04B\"E?
MD4'[M4"';?XJ8XW"K( ^S^]0#[I!J9ZH<'J;7ABZ-O>1\X^:OH?0;P3V40SG
MBOF73Y#%=(1ZU[OX%OO/C1<]!7C8JGU/2PT];'?BBBBO./2"BBB@ I'^X?I2
MTC?=/TH ^??B(/\ B<.?<UP8Y:N^^(W_ "%9/K7!1]Z]S"OW4>+B5[[%-!YI
MQZ4Q#S7HHXQ3]W%$/^L%(>M/A_UHK*LO=-Z2U/>_A@,:5^%>@5P/PS_Y!?X5
MWU?.5OC9[E/X4%%%%9%A5'5O^/"3Z5>JEJG_ !XR?2FMQ/8^=?'*?Z8W^]7*
MH.!78^.%Q=-]:Y&,5[6%>AX^(W%/3%'\.*3^*@GFO2BSC: #BE3Y'!-*.M)-
MQR*FJ[H5-ZGJ?PYOPEP 37LT+^9&&KYO\%ZA]GNQD]Z]]T6^6>U3!YQ7S^)A
M9W/<PT[JQKT445R'4%%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !7-^+YO)TUFSCBNDKB/B!=!-*8 ]JNFKR1
MG4=HL\*UUS/>LV>]9 &'%:5RXD<DU188>OH*2LCQ)OWATW*5:\.VQFOEX_BJ
MHW(Q73^"+3S;X$CO45G9&],]V\,1>7I40QVK? XK-T>/R[)%]JTQTKPZCU/2
MI+0.U5+U-UK(/:KE0W S P]JF+U+DM#Y^\<VVR>1L=ZX$)@UZS\0+3ACBO+W
M4 XKV:+NCRJRU&J,"H7_ -<#4_1*BQDYK>K&Z,(O4]>^&%Z(UVDU[#&V^,-Z
MU\]^!+TPSJN>IKWW3WWV<;>HKQL1"S/7P[O M4445S'0%%%% !1110 4444
M5K\XLI3_ +-?.OC=C)>2CWKZ)U'_ (\)O]VOG#Q5(#J4P/K7;@U>1RXGX3F8
M1@8I\AR,4B_>HZO7M11Y$MQJH<5Z]\)(!AB17E"XW 5['\*DVH:X,:_=.["K
MWCU0#'%+117CGIA1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !7AWQ6_P"0A^->XUX=\5C_ *?^
M-=&%_B&&(5X'ER\L:D-,AZFGCK7OPV/$FM1'^YBMKP1_R,D/UK$;K6YX)'_%
M20_6N?$_ SHPWQ'T_;?\>T?^Z*EJ*V_X]H_]T5+7@'M!1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110!R?C$?Z(WTKYZUC_ )"$GUKZ
M$\9'%HWTKY[UC_D(2?6O3P1YV*W*(/:E)P<4JKWI&'->O#<\R8$TAHZT=:T,
MP(^7-/MO]<#28R,4Z 8F%<U78Z*.Y]!?#<YTD?2NYKA?AM_R"1]*[JOG:GQL
M]VG\*"BBBH+"BBB@ HHHH **** "BBB@ K%\1?\ 'DWTK:K%\1?\>3?2KI_$
MB9_"?.'BG_D,-]:R0>U:WBD?\3=OK64!QFOH*.QXE;<1Z <4[[U,/6NI'./)
M^6D@_P!:*!SQ3H!^_ K"J]#2FM3VCX?<VRUZC']P?2O+_ '%LHKU"/[@^E>'
MB=SV*&P^BBBN4Z0HHHH *0TM(: 8F:44VG"F2F!KF/%&#92_2NG/2N/\73;+
M60>U;8?XS'$?"?/FK_\ (0F_WJJH,U:U7F^E/O51#BOH:+T/%GN)G$F*>_6F
M 9DS3GZUN0-W<41#]ZI]Z&&*=#_K%^M8U=BH;GL?P\^^E>MCI7D?P\_UB5ZX
M.E?/XKXSW,/\ 4445S&X4444 %%%% !1110 C_<;Z5X%\1Y?]/D7ZU[Y)Q&W
MTKYT^(DV[7)$SW-=6%5YG/B7:!Q,(^4U(HI$&WBG=*^@@M#PY;C2:<O-&W-(
M?E%.>PD7=%3=JBCWKZ)\'Q;-/ QVKP/PS#YFIH<=Z^B/#D?EV:CVKQ<4]#U<
M*C: Q4<XS$WTJ6FR#*'Z5P+<[&M#Q7Q_!M\QL5YAT4U[%\0(,P.<5X\XPY6O
M:P[T1Y-=:D8:D)R:5A@TJKFN[H<HX<K5G0)?+U,?6JOW:DLOW5R']ZPK*Z-Z
M+LSZ:\)/YFE(?:N@KE/ DOF:&ASVKJZ^?J?$SVX?"@HHHJ"@HHHH **** "B
MBB@#F/'/_(!D^AKYMNC_ *0P]S7TEXY_Y ,GTKYLNO\ CY;ZUZ.!W.#&$;<8
MI3P*&&:.O%>W$\EC2:"?DS1CG%*P^7%$P-[18/.@Q577+8VS#C%:_A5-\J)Z
MFKGCK3OLZQG'45R2J)2L;QIW5SAT.12]\5&#MJ3MFNA/0R:U)5;C;4,IVR8I
MZGC--(WOFG+X28[CU.Q@U>L?#"^WW&TGI7D[#Y:[/X>7WV:^Z]ZX,3"\6=F&
ME:9]#@Y&12U5L)?.M5?UJU7BM6/904444@"D?[A^E+2-]P_2@#Y[^(Q/]KR?
M6N#0\UZ#\1T_XF<C?6O/HAG->WAOA1XV)7O,>YIBG!J4KFD"5Z<3B$/3-+#_
M *P4['%)$/WHK"M\)M1W/?/A@<Z5^%>@5P'PQ&-*_"N_KYRM\;/=I_"@HHHK
M,L*J:B,V;CVJW45PF^%E]::!GSQX_0I=GCO7&]%%>D?$VS\J?..]>;9[5[.%
MU2/(Q*]X3-!I2.*D5,K7IHX]QBFG-\RFFGY6Q3_X:F;(2LQVF79MKD$''->V
M>"=8\X(K-7A"C$F?>NX\+:N;65?FQ7EUZ?,CTL/.Q]$HX<9%/K'T&\%W8J^>
MU:^X>M>3)6=CTXNZ%HHHI#"BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** &N<(3[5Y1\0[[_ $=TSTKU:;B%_I7A/Q#N
MOWLB9[UT8=7D<^)=HGG?FEGI']:9"-W-6A'E,U[U/X3QG\150Y;%>D?#ZTW7
M0..]>=(O[\#WKU[X=6W[Q3BN7%2LCKI*[/5;1-D*BK0J.,84"I:\63U/3@M
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
MKBE3:9U1FFC7HJG;WJ3' -7*AJQ84444@"BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@".XXMY/]TU\Y>/KC?J<R9[U]!ZG<K;VLA8
M_P )KYH\87'G:W,0>,UUX1>\<>+=HF)!PE6E<!#59!B.C<=M>Y#2)Y2=V/A^
M:[0>]>Y^ ;;RXT;'45XCID1FOH\?WJ^AO"%MY5E$<=J\_%O0[Z*U.M'6I*C%
M/%>2SO@+3&I]-H0Y'->)[;S[1N.U?/OB*+RM0D7T-?3&HPB2W?(_A-?._C&W
M*:K+QWKT,++H>=7B<[%]RFOQ2QG"TC\FO86J.#9DUB^RX3ZU[GX#GWH@SVKP
M2-BLRGWKVCX;7(D=5S7FXQ:'H866MCU>BBBO(/2"BBB@ HHHH **** .%\=R
ME+=@#VKP+4#F\D/O7NGQ"?;$?I7A5Y\UT_UKT\)L>;BMR!.#FG?Q9I,<4X?=
MKUEHCSNI+IZ[M5B/O7T5X-(^QIC^[7SUI*;M0C^M?0W@^)H[1,_W:\G&GJ81
M'64445YAWA1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !7A_P 5?^/_ /&O<*\.^*W_ "$/QKHP
MO\0PQ'P'F*G!-+T-,'+4]AQ7T$-CQ)[C6]:W/!'/B2'ZBL1_]76YX&_Y&*'Z
MBN3$OW6=&'^)'T];?\>T?^Z*EJ*W_P"/>/\ W14M>$>T%%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% '(^-#BT;Z5\]:L/^)A(?>OH
M3QI_QZ-]*^?=6_X_Y/K7IX(\[%;E-10>M(IH)YKV(H\J0IZ4T4I.*3I6A"!?
MO8J6#_7BH^@S3[<_O@:Y:^QU4-SZ"^&__()'TKN:X7X;_P#()'TKNJ^=J?$S
MW(?"@HHHJ"PHHHH **** "BBB@ HHHH *Q?$7_'DWTK:K%\1?\>3?2KA\2)G
M\)\X>*?^0N_UK,4<5H^*3_Q.6'O68IKWZ"]T\6ON/(XIB\FG,:3[O-=B1RBD
M4^ #S!4;G"YIT+<@UC56A<-SV;P O^CK7J$?W%^E>6_#QMUJM>I1_<'TKPL2
MM3V,/L2T4@H[UR'5<6BBB@84AI:0T )WI>U,8X&:53D4(E#)FVQDUX[\1KP>
M85!KU?5I?)LG;/05X#XVU#S[IAGO7;A(W=SDQ$K*QQSG]X3ZFG'[N:CZG-2M
M]RO=IQ/)F]15Y%/5>:B0]J?NPP%:,E#Y.%J"T&^\C'^T*=.^.*?IZYO(C_M"
MN.L[(WHK4^D/!EH$T:%\=JZJL+PD,:#!]*W:\";O)GN05HA1114%!1110 44
M44 %%%(: ..^($GEZ23[5\\7K[[LM[U[Y\3)-FC'GM7S](=S%J]/!+0\W&/4
M0\M0P^84*,\T/]X5["T1Y9)(-J"HW'RBI6.Y!48Y8+[U%38N&YZ1\/X,SQMB
MO<85Q$OTKR'X?P8\ML5[ G"#Z5X.)?O'LT%[HM%%+7,="U.;\4P>99-QVKYV
MU^/9JK#WKZ5U]-UHWTKYU\51[-7;ZUZ&$9P8E:F+T:ED[4PGFG?>KVUL>8P[
M4R8X48J1_E%09WG%8314-ST7X>3_ .FQKGN*][C_ -6OTKYT\ R[-9C3WKZ*
MB.8D^E>'BE[Y[.&?NDE%%%<QTA1110 4444 %%%% '+^.O\ D R_2OFVY&;E
MOK7TEXY_Y ,GTKYNN>+EOK7HX'<X,6-8<4V,<T.<"FH<&O;AL>5U'$?-2-TI
M3QS36/RYJ:FJ#J=CX)_X_P"+ZU[I>VHGTGI_!7A7@@YOXOK7T)&F_3E7U6O#
MQ;]]'K8-7BSYL\:69M[MSC'S5A1\6X->F_$K2O+4R!>M>8*?EV5Z&%GS(YL5
M&S%/*YI4;Y"*:?2HRVTXKLZG&/4=::>'!]#2@X%(.36-1%Q=CT[X<:A_IJ1D
M\"O<$8,H(KYK\&7GV;45.>]?0NC7'VBS5\YXKQ<5'WKGK8:5XV-&BBBN4Z@I
M&^Z?I2TC?=/TH0'A?Q''^F2'ZUYG#SFO3?B-_P ?DGXUYE$<$CWKW,+\*/'Q
M7Q,>]"<T-2_=%>C'8XF.Q38O]>*7/&:2'_7 USU]C6CN>_?#(8TK\*[^N ^&
M)SI7X5W]?/5?C9[M/X4%%%%9EA1110!PWCJU\ZW<XS@5X#>1[+Z0'L:^F_$-
MIY]E*<?PU\X^(H?L^H2\=Z]+!SZ'G8J&MS/[4S'STQ7RN:D_AS7MQ>AYEM1Y
M4;:@[TX29% &>:&ACL<4%!C--W<TX-GBIY1)D1)5JM07K1D8-0NG&:B4?-6+
MA<TIU#K]+UYX!C<:W[?Q*Q(^<UYQYABJ:._*D<USSH(ZXU6>Z^'-:668!GKM
MA>Q$?>%?.VD>(3;.#NQ766_C OCY_P!:\ZM1?-H==.JK:GL N8ST85*KANAK
MSBQ\1^:!\]=?HU\+A>37/*FTC=33-JBF[U]:7(-9EBT444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110!QWCJ^-I9$@XR*^=]5F,^H.^>IKW#XI
M3;+#@]J\'?YYB:]+!QTN>;C'J3@?N:A_@-2!N-M-D&%->G>QPP6IN>%+;S[Q
M#C/S5]$Z%;B*QCX[5X9\/[?S;@''>O?M/79:(/:O*Q;/1H+4N <TZF]J">*X
M#M0ZDI%.:=0407"YA<>U>#>.;3;>2MCO7O<G*,/:O(?'MIQ(^*Z\*_>./$+2
MYY'G!Q1UI).)L4_&*]R&QY;W&-P<UZ;\*;S-]M8]Z\PF.*Z_P!>?9+X'.,FN
M/%QO%HZ<.[2/I)6##(I:I:9-Y]FK^M7:\-GKH**** "BBB@ HHHH \V^)+[8
MC]*\/E.ZY?ZU[-\49-JXKQ1F_?,?>O5P2T/,Q;U'J,OBD?A\4L?WLU%.V&S7
MIRV//6YKZ!'OUB >K5]*:);"&QB('517SGX27S-6A/\ M5]+Z>,6,/\ NBO&
MQSU1Z^$6A:HHHK@.P**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH *\/^*W_ !__ (U[A7AWQ6_X
M_P#\:Z,+_$,,1\!YA%RQJ0BHD^5C4A/%>_$\2IN,;TK<\$\>)(?J*PSTS6]X
M)'_%20_6N;$_ S?#/WCZ=MO^/:/_ '14M16W_'M'_NBI:\$]L**** "BBB@
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
MU.;I7OQV/$GN(?6M_P $_P#(QP_45@_PUO>"3_Q4</U%<V)^!F^&^(^G+?\
MX]X_]T5+45O_ ,>T?^Z*EKP3VPHHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH Y+QG_ ,>C?2OGK5_^0A)]:^A?&?\ QZ-]*^>-6/\
MQ,9/K7J8+8\_%;D"_=H/2F*>U*QYQ7L1/*EN"]#3>]+TI#Q5DW!1EJEAXF%,
MZ#-+"?WHKFK[&]'<^@OAM_R"1]*[JN#^&G_()'TKO*^<J?$SW:?PH****@L*
M*** "BBB@ HHHH **** "L3Q'_QY-]*VZQ?$7_'DWTJZ?Q(B?PL^</% _P")
MNWUK*'2M7Q1_R%W^M9(-?047[IXM;<>G2DSS2]*:W KK6QSRV$!YIW6F@4IZ
M5+(ZAYA0\4QY22*1N>::!D5FX'1!V)O..*/..*A49-. YK"4-2W.P_SCBD\P
MFFD<T <TX1U$YDBL<4@&3S0>*#Q5\I',"CYJ7'S4=!FE[9K2*)<AP44D@]*5
M3Q3B,BM24,BZT2T+P34>[<^*!LL*H\G-5V/:K*GY<52?/VD*.]<E:>AO2C<Z
MWPCIYN;J,XSS7T)H]J(+*/ [5Y9\.-+\Q5<K7L4*;(E7T%>+B)W=CU:,+*Y)
M1117,= 4444 %%%% !1110 5YI\4Y?+LQ]*]+KRKXM2#[(,&MJ'QHSJ_"SQ6
M;YY":>GW:C/(IXX6OH:1X57<&'S4C<4HY&:8QK:6QFA^,LOUKU+X?VX\Y&Q7
MEL/S2J/>O8O ,6"AQ7DXF1UT%J>JP#$8J0GFF)PHH)^:O*>K/6B]"2DI>U-I
M%,6L#Q1$)-,<>U;QK)U]=VGL/:KAN93V/FGQ%'Y6HD#UJF,!*V?%T6W42<=Z
MP0W%>[AGH>166HAY-2IQ3%&32@_-BNR1SBR=*ZCP7/MU.%<]ZY=_NUL>$IMN
MMP#_ &JXL2KQ.G#/WCZ>LS_HD7^Z*GJI8,&LH?\ =%6Z\!GN(****0PHHHH
M**** .7\=?\ (!E^E?-EU_KW^M?2GCG_ ) ,GTKYIO3BY8>]>A@=S@Q8B\BA
M1S3%.*>>*]R.QY+W'CK4<WW:=GC-))S'FE(JF;G@[_D,0_6OIJQ_X\HO]T5\
MT>#1_P 3:'ZU]+V/_'E%_NBO"QOQGLX7X2Q5>[@$\14^E6*1ONFN$ZCYW^(%
MEY.HR,!7$6YW UZU\1[')DDQZUY);_*6!]:]K!O0\?$1]YE@@8J(=:65L$4$
M?*#7HK<Y1C=:E/RPYI-N122G]R165570)ZG;^ ]2:*XC3/!->^V4HDMD(/:O
MF/PK<>5>1\]Z^A_#EUY]JG.>*\7$PUN>KA9:6-ZD/W32TA^Z:XSM/&_B,O\
MK#]:\CAZ-]:]?^(HXDKR&,8W?6O=P[]Q'CXGXAR]Z5>M,!P:>>!FN^&QQ/<!
M]ZG1?ZX5'GO3HC^\!K'$+0VI;GO_ ,,O^05^%=]7G_PP.=*_"O0*^=J_&SW*
M?PH****S+"BBB@ HHHH K7EL+B(J:\I\7:'AW*+7K]8.JZ4+O=E<YK2G+E9G
M4AS(^8M4M)()SE>]0VS=C7HGC30?L\C%4KSC8T4C#'>O8HU=+GE5:=G8MR@;
M>*@ZTP2EN#4L0R:Z5.[,+60[&$I$Z4Z3CBFK]VMD9RV'9S1Q46[FAF(JD2D3
M#%+WJ$-Q4J\KF@=M!C'YJ=VIK#O0#0(7 I'Z4@/- Y:DE<!<?)3D'R&F^U&<
M<4FBTR,]:DM9/*?(ICC%(M<\X7-(3U.OT'7)$N%0L<9KW'PUJ"SV2Y;)KYKM
M9?(</7K7@C6=YCC+5YV)IZ'HX>>IZW13(V#("/2GUYIW!1110 4444 %%%%
M!1110!6OGV6KMZ"O!OB'=^;.1GO7N>L-LTZ4^U?.?C&X\V[<9Z-7=@XW9QXJ
M5D<Y'UI6Y.*9%4B<O7LP5D>5>[$B&7VUZ]\/K,&%6(KR*WYOU3WKW7P%;[;-
M3CM7'BI:'91CJ>A0C$:CVJ6HT^Z*DKQ7N>G'8****104AI:;WIB8H%(PXIU(
M:0/8X7Q[:AM)E?'.*^>V!2=@?6OI7QE%YFD2#':OG'4H_)O6'^U7JX-Z'F8E
M:C<?+4:]:<3P*,8&:]*7PG%'<TM(E\NZ'UKZ&\&OOTE3[5\U64VRY'UKZ+\!
M2A]%7GM7D8M:'JX9G74445YYV!1110 4444 >,_&#[ZUY-'TKUCXP_?6O)5/
M%>U@O@/)QGQ$C],TA_U5*WW*:W^IKMJ'' ZWP/\ \?L7UKZ*LO\ CSC_ -VO
MG;P(,WD9]Z^BK/\ X](_]VO$QGQ'KX3X2>BBBN,ZPHHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M KP_XJ_\?_XU[A7A_P 5?^0A^-=&%_B&&(^ \Q3J:!UIH.#2GCFO?CL>)+<1
MNM;G@D_\5)#]:Q''R9K:\$<^)(?K7/B%[C.C#+WCZ@MO^/:/_=%2U%;?\>T?
M^Z*EKP#V@HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH Y+QG_QZ-]*^>=7'_$PD/O7T+XT_P"/1OI7SYJY_P!/D^M>I@=C@Q134=Z"
M.<TY3Q1FO8B>3(:1FF]:?GBF#K5HCH.Z\4Z$?O@*8O!S4D',XKFK['30W/?_
M (:C&DCZ5W=<-\-_^02/I7<U\Y4^)GNP^$****@H**** "BBB@ HHHH ****
M "L3Q%_QY-]*VZQ/$?\ QY-]*N'Q(B?PL^<?%'_(7?ZUD@=ZUO%'_(7;ZUE#
M[M>_0^$\6MN*.:#\W%(O H4\UV+8YA<=J,=J#2CK18CJ1D8XH44]AS3:=KHU
M3$VX-+C'-./(I#TQ6,D%[C2.]*HXS2]L4O08HB@N)UH(S0O%+3DK$W$ZC%+V
MQ2#K2]\U41@..*5GQ2'K4<O)I@D/4TFW#9H6G/\ =K.4K%V&^9AJN:99F\U&
M,8SDUFJ"TF*]!\%:,9KN*4KD UY]>>AV8>!ZGX,TO[#:KE<9%=C56S@6&WC
M&,"K5>1)W=SU(JR"BD- J2A:*** "BBB@ HHHH CG?9"S>@KQ/XD7_VH,F>E
M>S:B=MA*?]FOG?Q=<F2\E4GO75A8WE<PKNT3CP<MBI2/EJ%?];4[?=KW:>QX
ME1WD"?=IA6GH?EI,YK6;T(ZCK5/WZ?6O=/ ]KMMXWQ7B5@N^Y0?[0KZ#\'0A
M=.B..U>/BCNPZU.M XI-N6IU**\VYZB0M%!HI%#:HZG'YEJRU?J"Y&8S51W,
MY;'SSXZMO+U \=ZX\+7HOQ#AQ?$X[UYZO)->[A=CQZ^XBC%(1@YI],D/%=;.
M84\K5G0I?)UF%O1JJJ>,4MIE-0C;T-<U=7B=%#25SZ>\-WGVFSCYSA:WZX3X
M?W!FM5R<X%=W7@5%:5CVX.ZN%%%%06%%%% !1110!R_CHXT&3Z&OFJ[^:X8^
M]?2GCO\ Y $OT-?-EP/W[_6O1P)PXLC44_KQ31P*<O!KVH'D,,<8I&^[BG=Z
M3OFE,=,Z'P>-NK0_6OI2Q_X\HO\ =%?-GA/_ )"\'UKZ3L?^/*+_ '17AXWX
MCV<)\)8H/2BBN$ZS@O'&G>=8R-BO KV+[+<E>G-?4>O6HN+!UQGBOG+QC9FU
MU,C&.:]+!SZ'!B86U,4C?@T]^% I(ONTDC5[">ESS&.!^6DD7,= /RT\G,53
M/4A;AI<_D72\]Z]^\ 7GVBW'/05\[KE90PKV3X8ZAM3:37F8J'NGI866IZ_2
M'H:2-MZ ^M*>AKRCTSR/XB)\DAKQY.K?6O8_B(X\N05XY'U;ZU[>&?NH\?$K
MWF)MYI>O%+FD7@UZ$#B$QS3HO]:!0.N:(_\ 7BLJ[T-:6Y[[\,1C2OPKT"N
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
M8%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %>'?%;_ )"'XU[C7A_Q5_X__P :Z,+_ !##$? >
M7#AJ>W2D498TXBO>BSQ)[@?N5N>"/^1CA^M8)/:MSP2?^*DA^M88GX&;X?XD
M?3UO_P >T?\ NBI:BMO^/:/_ '14M> >V%%%% !1110 4444 %%%% !1110
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
M_P!T5\Q^%VVZS /]JOIO3O\ D'P_[HKQ<;\1[.$^$M4445PG6%%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %>'_%7_ )"'XU[A7AWQ6_Y"'XUT87^(88CX#S!3AC3R<5&O+4]A
MQ7O11XD]Q&'RYK:\$<^)(?K6*Q^3%;7@?_D9(?K6.(^!G1AOB/J"V_X]H_\
M=%2U%;?\>T?^Z*EKY\]H**** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** .1\:?\ 'HWTKY[U?_D(2?6OH3QI_P >C?2OGG5C_P 3&3ZU
MZ>!//Q1 O2CM3%/-*QYKV8'E2%[4P=:4FD/%7L1T'BGVW_'P/K49/RTZV/[X
M5RUMF=%#<^A/AS_R"A]*[>N&^&YSI(^E=S7SM3XF>[3^%!1114%A1110 444
M4 %%%% !1110 5B^(O\ CR;Z5M5B^(O^/)OI5P^)$S^$^<?%/_(7;ZUD_P -
M:OBG_D,-]:R1UKZ"C\*/$KZL5!@&A.IH;BD3K78MCF9)WHIK&C/RU+T0D-8\
MTUFYI&R1FH@236$I:FO+H6@>*:QIJ9I#DFI<P4;LDS\E(/NTSGI2\YIQD.4=
M!Z4\5'T-.8X%;Q=S)H4T4G:D)XJY$=1?XJ<H'F+]:8.F:1&_>K]:QJ:(VCJ>
MM_#NQCG<;A7J]M81P'*BO,?AFXWCFO6@<BO Q3?M#V\,ER"T445RG0%%%% !
M1110 4444 %%%% !112$X&30!Y%\5)=D@%>1L<MFO2_BY<#[2H![UY>3\H->
MU@U[AY.+?O$F,U'_ !XJ1>E1G[]>C%:GGL7'S"E?G%*P^7-1*<M6KV")UWA&
MY%M-G..:] _MM1&/F_6O(K2[-MR#5TZV^,;C7!6A<Z82LCU1-=7;][]:/[=7
M^]^M>4?VZX.-QIXUU\_>-<SI6-G4/5/[<4#[WZTU==7/WOUKR]]<?'WC3%UQ
M\_>-2Z>@*H>IOKB@?>_6FIKRY^]^M>8RZV_E_>-5TUU\_>-$:>I7M-#TG6=4
M6:S<;NU>5WK!KAC[UJ2:NTMJP+&N>:0O(3[UW48V1R5'<D8XQ4O'EU6)S3MY
MQBNI[&(\GBH6IRG)H8?-4,:-OPU+Y>H0C_:KZ6T<YTN$_P"S7R[I,GE:G!_O
M5].>'Y5?2(,'^&O#QRU/8P;]TU:***X#M"BBB@ HHHH Y;QY_P @"3Z&OF^;
M_6O]:^D?'(SH,GT-?-MSQ<,/>O1P.YP8S8C7H:5>O--/%*>!7MQ9Y+'=Z8QY
MI2>*B<\9J9[! Z+PH?\ B=0?6OIBP_X\8?\ =%?,?A!LZU!_O5].6'_'C#_N
MBO!QGQ'LX/X2S1117&=@4R1!(A4]Z?10!XE\4[%8Y@RBO,XR.E>T?$VU,RE@
M,X%>(L6CN'4]C7KX27NH\O%1]X=G]Z:0_?IN?FS3STS7IQV//8C??!ID_(XI
M_P##FD0;P:51:%4]SI/!%X;>]'/\5?1.D2>;IR-ZBOF'1IOLUZAZ?,*^D?"\
MXET6(YYQ7C8R-CUL.[G(>/\ 'V62O#G'[QOK7MOQ ;_1Y/QKQ-N9&^M=N%C[
MJ./$/WK$D1^4U&OWS2@X%-[UZ"1QM#A]ZB/_ %XH/ S21?ZT&N>N]#2EJSZ
M^&7_ ""OPKOJ\_\ A@<Z5^%>@5\]5^-GNT_A04445F6%%%% !1110 4444 %
M%%% !1110 4444 %!Y%%% %.6QCD;)%5GT>%NJBM6BG=BLCS3Q-H:^>=B_I7
M!ZGH3YX7]*]UOM/6Y;)%9,_AU)/X!733K\J,)4KG@%WI$L()*_I6+/&T;<U[
MGXB\-K% 2J=J\HU;3'25@$/Y5Z-&MS(X*M+E=C%C;]WBG+TJ$HT<FT@U)G!K
MNC+0Y90T) *#1VICFM#$6/F2AQ^\IB'#9J7J<U#5V5<CDXKJO!UTT-W& >IK
ME9.M;?AJ39?19_O5QXB.AV8>1]+Z4V_3XF/<5=K.T1PVF0X/\-:->$]SV%L%
M%%%(84444 %<OXRN532)!GM73GI7F?Q!O_+M)$SZUK2C>1G5=HGBFJR^9>,1
M_>JOU%,=S+*Q]ZD4<5[])61XM26HY#6KH<?FWH'O6,&^:NB\)1&74AQWHK;#
MI[GO/A6$1Z:H]JZ)>E9.AQ^79**UJ\"I\3/4I[#Z2BD-9FPM.IHHH&F.HI!2
MTB@I#124Q7$/2LG6XA)I\H]JU35*_7?:NOJ*N&YSU=CYQ\40^1>/QU:L1""*
MZ_XA6Y@N<@=37$QMQ7NT=D>3+<E)PU56<B?-2N:@<'K6T]BH,];^'EX0J+FO
M:8#F%3[5\^> +G;/&I/>OH&T.;6,^U>'BE[QZN'=T34445R'0%%%% 'E?Q27
M*UXLV/.:O;/B>I*5X?(<3M]:];"?">9BMV/_ (J,?-3<TX=,UZ;^$\_J:?A]
ML:];C_:KZ@TS_D'0_P"Z*^6= ;&OV^?[U?4FE.&TZ#!_A%>)C?B/7P?PEVBB
MBN$[ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ KP_XK?\?WXU[A7AWQ6_Y"'XUT87^(88CX#S
M"'J:D-1+PU/8\5[R/$GN-:MWP2/^*DA^M8A'R9K=\$#_ (J.'ZUAB/A9OA_B
M1].6W_'M'_NBI:BM_P#CVC_W14M> >V%%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% '(^-/^/1OI7SUJP_XF$GUKZ&\9C-HWTKYYU<
M_P#$QD'O7IX(\_%%51WH(YH4\8I2:]>)Y<A,9I"*=G%(36AF(.>*? ,3"HUX
M.:E@YF%<U;8Z*.Y] ?#;_D$CZ5W5<+\-O^02/I7=5\[4^)GNT_A04445!844
M44 %%%% !1110 4444 %8GB/_CR;Z5MUB>)/^/)OI50^(B?PL^<_% _XFS'W
MK' XS6QXG/\ Q-6'O6/GC%?04/A1XE;<7[PIT:Y--7@4Y6VFNZ.QS,5ASBF-
MPM/W<YIA^8XJ*CT*IHF@@,B=*&M"IZ5TF@:4;F,?+G-= WA1FP?+_2O,K5>5
MG9&FY(\]^S%1TI4MB3TKT%_"C8_U?Z4L?A1A_P L_P!*Q5=&BHL\]>U([4PP
M';NQ7HLOA1B/]7^E4=0\--;:?)(4Q@>E7&LARHNQP:C.?:CJ::K8E=?0TJGY
MJ]&B[HX9JP[%(1Q2TAZ5T,Y^H=%IB?>S4@Y&*3;M!KGJ;&T#TGX<WVRYVY[U
M[=;/OA5O6OF_P7=_9[T<XRU?0^CR>;I\;>HKQ,6M;GLX5Z6+]%%%<1UA1110
M 4444 %%%% !1110 54U"7R;1W]!5NLO7SMTJ4^U-;B>QX3\0;S[;=GG.#7%
M*,C%;?B6?-Y("?XJQH>>:]_"Q]P\7$N\@SCBFCEZ1SAJ%/.:[8G,T2GIBHL;
M34N:8W)JWL0G85S\M1G.*<>11VQ7/:[+YAFTXS2J#C-/[8I.@Q4R@7S!RPI
MIS2H:<>*EP%S.XQLL,5&$.ZG@_-FG]\U/)J5SC@V$VU$$P:=U.:D'2NB$;(S
MDR-ABD*_+3FYHZC%:$B(.,T_&3FD!P,4N:5A=1UNWEWL3>AKZ!\#ZG]IM8X\
M]!7SUTE4^]>P_"^8O* 37D8V&EST\'+H>NT445Y)Z@4444 %%%% ',>.?^0#
M)]#7S9=_\?#'WKZ2\<_\@&3Z5\VW?^O?ZUZ6!.#&$?6CKQ2*>*7I7MQ/(D)U
M.*CE&!4@^]FFRCY<U-0<#8\('&M0?[U?4%A_QXP_[HKY>\(_\AN#_>KZAL/^
M/&'_ '17@XWXCV<'\)9HHHKB.P**** .6\6:;]KM)&QG KYYUJS^S7T@QWKZ
MDU&,/92@CM7SSXTM?)NY&QWKOP<];''BHZ7.1Q\N:4<C%)GY*13@U[=/8\B1
M-M_=FF0#&:D!RE,4[<TYBIO4%?RKA#[U[OX$U3S;*.+/:O I#EQCUKTWP!J'
MES(A:O.Q=.Z/0H3Y6=#\0/\ 425XQMY8^]>Q^-G\ZS=O:O&G?8[+[UOAE:*,
MJVLK@!DTNVB.E)Q7<MCC;U CBF1#]\!3\\4R(_OQ7+7V-*6Y[_\ #$8TK\*[
M^N ^&1SI7X5W]?/5?C9[U/X4%%%%9EA1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %)@>E+10!EZM9BYBVX[5P]_X4$S,=GZ5Z60#UJ-H$(/ K6%
M5Q5D9RIJ3N?-/B31_L5VP"XQ7-X^>O:/&NB>;(\@3]*\COK8VTY!&.:]:A5Y
MDCSZ].Q"1Q3"N:"W%(&KT(.YYTE9B;<4\&DSFEQ56)>Y&_+5>TN7R;V(_P"U
M5,CG-.A;_2X\>M<>(6AU4'J?2GA2\\ZPB7/:NGK@/ DI:WC&>U=_7@U%:1[4
M'=!1114%A1110 C?=->)?$>[_?R1Y]:]DO9O)A+>U> >/;GSM1?GO73AE>1S
MXAVB<-$G+?6IL84TD70TI;->_36AXLM652?WGXUZ/X&T\-<))CK7G9C_ 'BG
MWKU'P5<+$$!K&O\ ":P9[!8J(X *N*PKG$U557&ZGC6%'\5>+*#;/0IR.BW#
MUH+#UKG?[97^]3CK"@?>J.1FW.CH 12[AFN?_ME<9W4#65Z[J7(QJ2.@W"E+
M"N>_MA?[U!UE?[U'(PYTC?W#UHW#UKGAK*D_>H_ME<_>I\C%SHZ D5!-AHR*
MQO[97.-U1OK*YQNIQ@[F<Y)H\W^)MJ-^<5Y>B_,17JOCZX%R,CFO+B-LIKV\
M,GRJYYE3<3;EL4KP\4*WSYJ0N#71-&<7J;OA"?R-4A3/4U])Z>VZQB/^R*^6
MM%F\K5X6ST:OI'PY?"YLH@#G"UX>,7O'K826EC=HHHKB.P**** ///B)!YD#
M'T%>"W"8O''O7T)X[Q]F?Z5\_P!YQ?2?6O5P;]T\S%[D2KEL4A.'VT]>&S41
M/[W->IT/.7Q%S2SY6L0MZ&OI+PM>?:+&,9Z+7S/:OC4(S[U] ^ 92]LO/:O'
MQBZGJ81]#NJ***\X] **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH *\/^*O_(0_&O<*\/\ BK_Q
M_P#XUT87^(88CX#R]1EC3R,TU3AC3B:]V)XD]QI/&*W?!)_XJ2'ZU@L.,UM^
M"?\ D9(?K6.)^!G1AOB/J"V_X]H_]T5+45M_Q[1_[HJ6O /:"BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@#E/&/\ QZ-]*^=M7_Y"
M4GUKZ'\9G_1&^E?/6K_\A"3ZUZ>"//Q6Y27K2MUIRCBC%>O!GERW&&@TX]*:
MO)K5&0'[M/MO]:*0TMM_KQ7-6UBSIH;GT%\-O^02/I7=5PWPW_Y!(^E=S7SE
M3XF>[#X4%%%%06%%%% !1110 4444 %%%% !6)XC_P"/)OI6W6)XC_X\F^E7
M3^)$5/A9\X^)_P#D+M]:R!UK:\3C_B:M]:QU%>_1^$\2L*PY%-EZ#%2$<4P?
M,:[%L<X@^[3H>9!2E>*(O]8*RJ;&M)'KG@2P6:!6(KTU-*AV#Y>U<;\-X0^F
MAO:O1%X%>!B9WE8]FA"T3/\ [*A_NTO]E0_W16A17-=F]D9QTJ$_PBL3Q5ID
M2:#.57G;765D>)$\S1IE]13C)W%)*Q\KSH8[V8?[1I!6GK=J;>]DR,98UGH*
M^APTO=/%K1LQ0*1O2I%QFHS_ *W%=5]#CMJ+'P>:?(1BHY/E-,+%JB:T+B:.
MC7!@O$.?XA7TAX6N1+I$//.*^8(9/+N(S_M"O?\ P)>^;8PIGM7CXN%SU<+(
M[^BBBO-/0"BBB@ HHHH **** "BBB@ K"\37 32IA[5NUPWC>[\JRE7/:KIJ
M\B*DN6)X)X@D,E\^/[U5H/NTMXWG74A_VJ2+BOHL.K0/%K.[&2]:1?NTY^32
M#K728/8</NT@IU%/=&5Q@ZT#K2M2K46U&)_%0W6G$<9H'(H*6PP4K=*510.3
M4LH93Q]VD YI>^*5M0!>E.7I2=#BAN*U0AH'- ^]3\4C<"I9*W$_BI#UIR_=
MS1CBJ8=1K'D5ZK\*)-UUCWKRANE>D_".<"_8$]Z\S&KW#T,'I(]XHI%(89%+
M7B'KA1110 4444 <QXY_Y ,GT-?-=Y_Q\/\ 6OI+QW_R )?H:^;;CF9_K7IX
M!'!C"(4YNE"CBE7DU[43R6)CBD?_ %=/IC^E1,(&MX1'_$\@_P!ZOJ"P_P"/
M&'_=%?,7A08UR#_>KZ=L/^/&'_=%>'C?B/:PGPEFBBBN$ZPHHHH BN!N@<>H
MKQ+XB6)7<P%>XL,J17F_Q$T[S+8E5SQ71AY6F8UXWB>$8(.*0U:GB,=RRD5
M<>9BO?HO0\2HA4; Q2/Q36X<4K]!6LD9[$:C+5U7A.[,%Z.>]<P@K1TZ?R)P
M1ZUA4C<VA+4].U^3S])9_:O';O/VDX]:]4GN!-X;9B><5YA.NZ=C[T4QRD+'
MP*5Z:>,4_&174MCG>XT_=ID7^M%/[TD0_?BN6OL:TOB/??AA_P @K\*]!K@/
MAD/^)5^%=_7SU7XV>]3^%!1116984444 %%%% !1110 4444 %%%% !1110
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
M@HHHK,L**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"N5\760FTZ5L=JZJLS7D#Z7*/:J@[,F:NCY>U*'RKV0?[1JLW05L>)H?*O9/
M]ZL4G*BO>PTKH\2LM23.$J/=S2YRN*;MYKO.8?UYI4/[Q?K0!A::O#BN>ML;
M4=SV+X9R;I@*]<KQOX7'-S7LE?/5_C/;H_ %%%%8FH4AI::YPA/H*!,XSXAS
M"/1F.>U?.URV^Y+^]>T_$/41)9O"#TKQ9TY)KU<%'0\W%RU$!^<&I9GW 5$@
MS3GKUHGGO<:.: <'%*E(1@YJ9+00UOO4$\8I<=Z7;FH42T]"+.#2].:".:4C
M(H<"HR$]Z#R,T['RTN/EIJ"*YB,"E-/ XII%)PU)DQG4T['% 7!I^*.05]1G
M;%-/'%2[>]1L,M4J.H^85>*D#<TFWB@+S6BT,GN2$\5&7P*<QXQ41&:L21*J
M>8FZO1?AO>?9Y=N>IKS^'Y82*Z/PA<^5>H,]6KS\5&YVX>5F?2%J^^W5O45-
M5+2FW:?$?45=KQ7N>NM@HHHI#*FI#.GS#_9-?-GBB/R]4F/JU?2M_P V4O\
MNU\Z>-(]M]*?>NS".TCEQ/PG*;>=U2ALKBF?\LJ1#SBO;6QX\MQK?(VZO8_A
M)<^8C GI7CEQ]TUZ-\*KW[/(5)ZFN'&1O$[,*[2/>12U%;OYD2MZU+7C,]5!
M1110,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ KP[XK?\ '_\ C7N->'_%7_D(?C71A?XAAB/@/+DX
M8U(QXI@&6IS#(KWEL>)/<"/ES6[X)'_%1P_6L(GY<5N>"3_Q4</UK#$? S?#
M_$CZ=MO^/:/_ '14M16W_'M'_NBI:\ ]L**** "BBB@ HHHH **** "BBB@
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
M71V4*EF>QT5#:R"2W5L]14U>4>B%%%% !1110 4444 %%%% !1110 5D^(9
MNDS<]JUJXCQIJ@M[:2/=U%73C>1$Y61X/XEEW:@_^]5 _P"K%3ZH?/NW;_:J
M''R 5]!0C9'BUY)L7/R48XS2#TH)P,5V'.AV?D-+81^;<K]:CS\I%6]('^FQ
MKZM7+7>AO36I[7X B*!>*](KD/"%EY-K&^.HKKZ^>JN\CVJ2M$****R9H5=0
M8+92G_9KYT\:W.Z]D&>]>]Z_<^392#/\-?.7B:7SK^7G^*N["1UN<>*EI8S%
M&8!3.@I4;]V%I&^[7LQT1Y$M6,!W-BO6?AC8>9\Q%>46R[IU'O7N?PR@\N'.
M.U<.,EIH=V$5Y'I$2;(POI3Z**\<]4**** "BBB@ HHHH **** "BBB@ HHH
MH *:XRI'M3J0T SRWXCZ8%L'FV]:\7484BOH;XBQ;]%;CM7SS,?+F*^]>Q@9
M>Z>7BX^\!'RU$HSFI"W%)&.#7H2V.'J7]%G\J\3G^(5](^%9 ^C1'/:OF&W?
MRKE#_M"OH/P/?>9IL29[5Y6.6AZ6$9W%%%%>8>@%1W S;R#_ &34E-D&8V'J
M* /G+QS:E=6E?'>N35?W>:]6^(NE^7%)/MZUY*DF1MKV<*[Q/*Q4=1R\FFS#
M(J0#:<4DWW:[+71QK1E[P]=_9[Q><?-7TEX8N!-I,9SU%?+-K)Y5RI]Z]]\"
M:MYMI%%N["O+Q<-#T\++4]%HI!TI:\X[@HHHH **** "BBB@ HHHH **** "
MD-+2&@&9.O7'V>R9\XXKYZ\57YN-3;G/->X^-YO)TECGM7SKJ<OG7I;/>N_"
MPNKG%B96T*[G%(#N%(W)IP&!7I6LCS7J5F8B0#WKU7X;VA%Y'+BO+_*W3)[F
MO>/A_IOEV44N.U<.)EH=V'CJ>D#[HI:!THKS#T0HHHH **** "BBB@ HHHH
M*\0^*I_T_P#&O;Z\0^*H_P!/_&NG"_Q##$_ >79^:G]!3 ,L:=UXKWXNYXDM
MQCGO6]X'&?$<)]Q6"PK?\$<>(X?K6&*^!F^'?O(^G;;_ (]H_P#=%2U%;_\
M'M'_ +HJ6OGCVPHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH Y'QI_QZ-]*^>M7YU"3ZU]#>-/^/1OI7SSJG_(2D^M>G@]CS\65EX&
M*7M3?XJ4U[$$>5(3/%(O%#=:0U=K,E,4]:2V'^D@^]':GVP_?"L<0M#HI/4^
M@_AO_P @D?2NYKA?AM_R"1]*[JOFJGQ,]RG\*"BBBH+"BBB@ HHHH **** "
MBBB@ K%\1?\ 'FWTK:K%\0_\>3?2KI_$B9_"?.7BH_\ $V<>]8R\"M?Q3_R&
M7^M9.*^DHOW3QJ[U'+TI%ZTE%=!S6!J(?]8*1^E.@^^*PK?";4UJ?0'PR_Y!
M/X5WU<#\,O\ D$_A7?5\W5^-GMT_A04445F6%%%% !3).8V'M3Z1N10#/(?'
M]AB-Y,5Y$YVOMKZ"\?V0?36('.*^?+M3'>E3ZUZF$J'F8J&HIH!H;I35Z5ZJ
MU/-M87-#<C%-'6E'6M$3U(Y5Q'74^![@KJ<*Y[US<JYCK1\*S^3K4.>FZN#%
M1NCNPSU/J6T.;2(_[(J>LW2;M;BRBVG/RBM*O":LSV$[A1112&%%%% !5:\F
M$,+$^E6:Q/$<QALF(]*J*N[";LCPGQ[=^;J[@'O7'1\&M;Q1.9=8;)[UE@<B
MOH,-&T4>+B'J2$\5%GFGOTI@'-=B.0FBZTV?KFG+P*;)TK.H[(J.K-WPA%NU
MB$^]?2]@H6RB_P!T5\\^"(-VH1-CO7T1:<6D?^[7@8M^\>SA%9,FS2TT=:=7
M(=2"BBB@84444 %%%% !1UHHH \S^*%N&L\@=J\-/RSE:^@?B)'OLC]*\ N%
M*W[CWKU<$]#S<7'6Y(S#;BH<8I-W[W%/<<U["V/.V!1\IIBCYC4O\-,C^]3D
MM">HZ ^7,#[U]!> +T-I*)GL*^?)>,$5Z[\/+P^5'&37CXR!Z6%=F>OCI12+
M]P?2EKR3TPHHHH Y?QU_R 9?I7S9=<3N/>OI3QQ_R 9/I7S5>_\ 'TWUKT\
M<.+&J<"ES3*4]*]E*YX\MP!^:E/K3!UJ7^"G):#CN:GAC_D/0?[U?3^G_P#'
MA#_NBOE_PQ_R'X/]ZOJ#3_\ CPA_W17@X[XD>UA/A+-%%%<!UA1110 4444
M%%%%+J!Y?\0]-,RR2XZ5X?(FV:0>AKZ=\662S:1,V.<5\WZA;F&\F!'\1KTL
M)/H>?BH6U*$6=]2MS21K\QH_CKV(,\R0?PXI5.!33]Z@\&M3.X[-%--#=*>Z
M)L./W:;!_KP:<?NTD(_>"N6M\)U4'J?0'PS.=+_"N^KS_P"&/_(*_"O0*^=J
M?$SW(?"%%%%065;^Y%M;F0G&*\1\<Z[Y]RRJ_>O5O&,Q@T61QUQ7S1K%_)/?
M-D_Q5U8:-W<YZ\K*Q%(Q>0D^M$G"T@Z TY^0*]>$3R9R(0ASFIE8=*D* 155
MR=]=*CH97N.?_6 BNF\.Z@;>=/FQ@US)J:WG:)@0>E85HW1M3EJ?2WAK5EO+
M=$#9(%=+7BWP]UO;/B1N/K7JT6K0R' 85X56FXRL>Q3FG$TZ*CCD$@R*DK$T
M3"BBB@84444 %%%% !1124"([B7RHBU>,?$#4]UPRAJ].U_44@M6&[G%>">+
M+\W%VW/>NS"PO*YRXF6ECG&DS(2?6G#I54D[JLJ?EKW::LCQYN[&]&I&YYIS
M"C'R5H]42B//%:>AIOU&'_>K+/2N@\+0&2^C..C5P8B6AUT5=GT9H$8728./
MX:U:H:.-NF0C_9J_7A2W/96P4444AG%^-KKR+=AGJ*^?]4D\R\D/O7LOQ,N?
M)7&>M>(3OOG8^]>MA(^[<\S%.S8U1S3W^[0J\9HD/RXKO:LCSMV3:4GFW\:^
MIKZ$\$V1MK53C&17@_AB R:Q#QQNKZ:T>V6&QBP/X17E8N?0]7!QTN:-%%%>
M>=X4444 %%%% !1110 4444 %%%% !1110 4444 <KXXC\S2F'M7SEJD1COB
M/>OIGQ1"9M/91Z5\\>([8Q7[9'>O3P4K(X,4M3$-/4X%,[TIX%>ONCS6,8_O
M5(]:]H^'=T66-,UXQCY@?>O3OAU=;;Q%)KS<9&Z.O"O4]R'2EID;AT!%/KQS
MU@HHHH X+XE6ZMHK$#G%?/80I,<^M?2OCJW-QI+*!GBOGK4K8V\Y!'.:]3!R
M]TX,3&\BJQRPI)/F%,7I4B#=7I(X)JQ5=2K ^]>D_#[4S'=(A:O/+A1MK9\*
MWAMK]23QFN7$0NCHHSLSZ?M9A-$&'I4]<[X<U%+BT7GG%=%VKQ9*SL>K%W04
M445(PHHHH **** "BBB@ HHHH *1CA2?2EJK?7"P0,6..*$!YY\1=746#Q!N
M17AKR;V+>]=IX]U1I[N6-6XS7"Q@F*O9PE.T3RL1.[+$:[AFG-3K8?NCFD]:
MZY:(YXEBP@^T7,8 _B%?1_@ZW$6B1#'.*\'\(V9N+\<=Z^B-"B\G3D3T%>1B
MF>CAE9FG1117$=@4444 %%%% !1110 4444 %>(_%0_Z=^->W5X=\5O^0A^-
M=&&_B&&(^ \Q4_,:<.#48^]3STKWX'B2W&GK6]X)_P"1DA^HKGS6_P""/^1C
MA^HK#$_ S6A\:/IZV_X]H_\ =%2U%;?\>T?^Z*EKY\]T**** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** .1\:?\ 'HWTKYZU?C4)/K7T
M/XR&;1OI7SMK!_XF4@]Z]/!;'GXL@49&:*$^[2$\U[%,\F8N.*8.33LTG2M+
MZD]!.]26W^O%1]Z?;_ZX&L*_PG11W1]!_#?_ )!(^E=S7"?#4YTD?2N[KYJI
M\;/>A\(4445!04444 %%%% !1110 4444 %8GB/_ (\F^E;=8GB/_CR;Z5=/
MXD14^%GSGXH'_$U8^]9('RUJ^*&_XFS#WK(W?+7OT7[IXM7<5>:3O2*>:<PK
MK3,$!&12PC]X*3M2Q?ZP5A6>AO3W/H#X9_\ ()_"N]K@OAE_R"?PKO:^=J_&
MSVH?"@HHHK,L**** "BBB@#G_%-M]HL&7&>*^<O$-OY&KL,8YKZAU&'SH&'M
M7SQXZM/(U21L=ZZ\-*SL<N(C='+GF@#BHXGW*33P:]ZD[H\6:LQ,<T-P,TJG
M)ICGM6SV,T38S#4=E+]GO4<<8-*C_+BH7&'S7-5C='31E9GT%\/M4^V6P!;.
M!7H':O#_ (:ZAY6%SUKVN!M\*MZBO KQY9GM497B2T445@:A1110 AKF?&,F
MS3B?:NFKC_'LFS2B?:M*?Q(B;T9\]ZV=^IL?>JX'%/OV\R^)]Z83CBOH:'PG
MB5WJ+C(IBCFGCI3>AKJ1S)CE^]BFOUQ3EZYH8<UA5>AM3W._\!VY:>-L=Z]X
MMQBW0>U>3?#>Q\RV63'2O7(QB-1Z"OG\0[R/:H1M$7%+117.;A1110 4444
M%%%% !1110!Q?CN,O9G [5X!J$>R_?ZU]+^(K/[3:/QT4U\Z:_%Y6K2IZ&O1
MP3UL<6+CH8[</FI.J9J!S\^*D#?+BO=@>2PC.0:5/O4U.*<?EYJFB'N/;FO0
M_ %QMO8TSWKS82?-7:^ I_\ B<QKGN*\S%+1G=AGJCZ)C_U:_2G4R$YA3Z4^
MO"/8"BBB@#F/''_(!D^E?-MX/](?ZU])>./^0#)]*^;+T_Z2WUKU,O.'%C%&
M:"*$Z4,:]N)XT]QJCYJ?WQ3 >:4G S1/8J)K>&^/$%O_ +U?3^G_ /'A#_NB
MOF#PO\^O0'_:%?3^G_\ 'A#_ +HKY_'?$>SA/A+-%%%<!V!1110 4444 %%%
M% %#6(_-TZ1/45\\^,++[+=L<8RU?2%RF^%E]:\3^)%CY<N['>NG#2L['+B(
MW1YJHXIK<<T*WS$4A.3BO>HNZ/'GN YYH-'0XI&-;LPZBKR*3J:%.*.AJD5;
M0<.N*=$/WPIO3FEB/[T&N6OL=%'<]]^&0_XE7X5W]>?_  Q.=*_"O0*^=J_&
MSW*?PH****S+.8\<\Z!+]*^9+U#]L8D?Q5]1>+HO-T:1?:OG#6+7R;QN.]=N
M$W.3$)LHJ/EIT8W-0OW::K;6KVX(\F>Y,_3%5MOSU+OR:"O&:V6QFW8C<4T=
M:?U%0EL&L9JY<6;.F:JVG/N5L5W&A^*&FE4%S^=>8$%@*TM)N3;S#GI7%4I)
MZG73JM*Q],:+>K-:!BPK5$BGO7D>@^)=D2IN_6NTT_6!,ZC=UKRYTFF>C"HK
M'5T4Q'!0'-.R*P-A:*3(HR* %HI,BC(H 6H7G1<Y(I\CA8V.>@KSW6/$OV>[
MDCW=/>JC%R9,I)(P_'&N^5</&'KRF]N#<2EB>]:GB?53>:@QW9S6#7L86G:Q
MY>(G=B;:E7I3!3TZUZ:6APLD09--8X?%+G::@9\R5+>@D/<5VW@6T\VX4XZ&
MN)SN85ZK\-+/S/FQ7F8N5D>CAHW/7]/799QKZ"K51PKLB4>E25X[/4"D)P,T
MM5KZ7R;5W]!0!Y)\6[D!@ :\>4[GS7??$?4/M=SMSG!K@D7'->[@XV@>1BG>
M1= _=U5<_/BK"/\ +BJ\@P^:ZZBT.2"U.N\'6A?487QWKZ+LABSB'^S7CGPX
MT[[1&LN.E>SPKLA5?05X.*E>1[.&C:))1117*=(4444 %%%% !1110 4444
M%%%% !1110 4444 5;Z 3PE2,\5X%XZM/)U)^.]?0S?=->(?$:#%U(^/6NO"
M2M.QSXB-XW/,!]ZGN.14*-DD^]2J=U>_%^Z>-):BS+A :ZWP1=>5?KSWKDW.
MX8]*U?#4_E:@O/>N2O&Z-:,K,^E]*E\VU#>U7ZP_#$OF:<I]JW*\*:M)GM0=
MXH****DHH:I:"[MBA&>*^>_&ME]EU1E P,U])-RI^E>'_$6S_P!,DEQ77A9-
M2L85XW5SS/&!4L/0U7#9W4Z.3 ->W%W1Y-7<20[FQ4L,AMB''%1+RU22)N3%
M14C=!3E9GK?@36C((T+5Z[$X>-2/2OFGPGJ7V2^C3..:^@="O!=6JG/:O%Q$
M+2N>M1E=&Q1117,;A1110 4444 %%%% !1110 =*Y#QGJ0M;-L-CBNJN)!'
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
M'>N0;[HKOOA[!_Q,HV]Q7G8MZ,[L.M4?0,"A84QZ5)3(O]4OTI]>&>L%%%%
M!1110 4444 %%%% !1110 5P?Q+B#:.>.U=Y7'>/X_,TDCVJZ?Q(B>L6?.4G
MR2$5+&WRTFH1E+HCWJ.,XKWJ+T/"JQM(28X--C.VG3#)%,8'%=B)V0\'YLT[
MHVZF*#BG-]RN:LBZ>C/:_AI?!;$)GM7J2G*@UX3\/;LQO&F>M>YVYS A]17A
MXB-I'L4)7B24445SFYS/C?\ Y 4GTKYLO3_I+?6OI+QQ_P @*3Z5\V7O-RWU
MKTL#N<>*V(P>*!Q24K5[!Y$MQ!US2/ZT[^&D/W:F6PD:/A?G7[?_ 'J^H].
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
M_$95OA/+%&XFCOBEA/+4A.&->Y3GH>3*%V2'E<5O^">/$,(]ZYY6YK>\&/\
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
MQ:[&VWO656948VD>\VW_ ![1_P"Z*EJ.#B!!["I*\\[@HHHH **** "BBB@
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
M-L.1$B#"*/:G445F6%%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 54N+-9FR15NBA.P-7,QM+C/8
M5&='B/85KT57,Q<J,C^QHL?=%']C1>@K7HHYF+E1EKI4:]A4J:>BD'%7Z*.9
MCY4(J[5 I:**D84444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1VHHH IS62RG)%5SI49[5J457,Q
M61D_V1%Z"E&D1#L*U:*.9ARHS4TR-3G%7XT")@4^BE<$D@HHHI#"BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH ***1CM4F@!:*I&_C#$9Z4?VA'_ 'J +M%4Q?QD_>I?ML?K0!;HJF;^,=Z3
M^T(_[U %VBJ\5TDIP#5B@ HHHH **** "BBB@ HHHH **** "BBB@ HHJ*:9
M85RQH EHJC%J,4DFT-S5X=* "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHI"<#- "T51;48EEV;N:MQR"1<B@!]%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 444=J "BJKWB(V":GBD$BY% #Z***
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***9(XC7)H ?1444
MHE&0:EH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HIDCA%R:I#4XC/Y>X9H T**0'(S2T
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !5:^E$5K(Q/059KEO%>H?9;9USU% '*7/B$K>2+OZ'UI$\0$G[_P"M><7^
MJL+V0YZFEM]49CUH ])3Q!^]P7_6IWU\;AA_UKRJYUIH&SNJ.#Q&99!\WZT
M>ISZ_M_C_6H?^$A/]_\ 6O/9]68XY-,_M)L=: /9/#FK?:KH+NS7<=J\6^']
M\9M4"D]Z]H'04 +1110 4444 %%%% !1110 4444 %%%% !7/>*KPV=B7!Q7
M0UQ7Q#?9I)/M0!S6@:^UQK"Q[LY->L1G,:GVKP3P8"^MHWO7O47^J7Z4 /HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *CG.V!SZ
MU)4-U_QZR_[IH \IO/$+)KLD._H:]'T*?[18J^:\*U&4_P#"6S#/\5>U^%#G
M2U^E &_1110 4444 %%%% !1110 4444 %%%% !1110 4444 %-D.(V/M3JC
MG.('/^R: ."U;6?)O&3=T-=7H-Q]IL0^<UX_XEORNL2+G^*O4/!4GF:.I]J
M.FHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K,UN?[/8L^
M<8K3KF?&\_V?097ST% $OAN^%U"QW9KH:\I^'NL><C+N[UZI&<H#ZB@!U%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4UG"GDTZN<U[4_L=Q&N<9- '1 Y&:
M6JUC+YUJC^HJS0 4444 %%%% !1110 4444 %%%% !1110 4444 9NLS>1:%
M@>U>5V_B1F\5I;[^K5Z7XD_X\&^E>!VLA_X6!$,_Q4 ?2<!W0(?4"I*AM?\
MCUB_W14U !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 5QGC"Q>Z0A0>E=G5:YM$G^\* /GR\\*S/,QV'K3K;PK,I^X:]
MQ;0H&.=H_*A=#@'\(_*@#YW\2^'IK:T:3:1BN5T*REGN0O)YKZ'\?Z/#'H$C
M!1G!KRCP78+)J*@C^*@"^/"\SHAVGI4G_"+3;?N&O:K;0X#;1G:.GI4W]AP?
MW10!YQX&T.2RU0.RD<UZ\.@K/M=,BMI-RKBM&@ HHHH **** "BBB@ HHHH
M**** "BBB@ KB/B.,Z0?I7;UQGQ"YTD_2@#S;P0<:N@]Z]YB_P!4OTKP/P=G
M^W4QZU[Y%_JE^E #Z*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "H;O_CTE_W34U0W7_'K+_NF@#YXU-"/%LQ_VJ]M\)?\@I?I7C.J
M@?\ "42_[U>S>$O^04OTH Z"BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH *CG&8''J*DI",@B@#Q?7] DGU>20*>37I'A&U-KI2H1CBKTNE12R%R
MO-7;>!8(]JCB@":BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "N-^))(\,38]#795QOQ(&?#$WT- 'F?PO=BYR?XJ]Z@_U"?2O"/A@N&/\
MO5[O!_J5^E $E%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5YA\1+TV^HVZ@
MXRPKT^O%_BS*4U>T _OB@#U3P^_F:/ WJM:E8OA4[M MC_LBMJ@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH QO$2[K%OI7@-O$1\0HC_M5]!:[C[$WT
MKP>+'_"?Q_[U 'T/:_\ 'K%_NBIJBM?^/6/_ '14M !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% '(?$3_
M )%R7Z&O)_ B#[>I_P!JO6?B$,^'I/I7E'@<[=04?[5 'T!:_P#'M'_NU+4-
MK_Q[1_2IJ "BBB@!"<"F^8N>M1W,HCA8YZ5A1ZF#/MW=Z .DHJ**16C!S4M
M!1110 444A(%  6"CFFB12>#5'5+H00[LUFV&IB68#=0!T=%-#J0.:=F@ KB
MOB(<:2?I7:UQ?Q#&=)/TH \Z\%KG6$/O7NT7^J7Z5X-X-?&MHOO7O$; 1+D]
MJ ',X7K0KANAK(U6^$!ZU'I.H"XDQNH W:*0$'O2T %%%)D"@!:*3(-!8 =:
M &^8-V,T^N>;4@-3\K=WK>5U*@YH ?12 @]*6@ HHHH ***3</6@!&8+UI0<
MC-96JWHMPO-7+*=9;=6SUH M44F0>]+0 5#=?\>LG^Z:FJ&Z_P"/67_=- 'S
M[JC?\55+_O5[1X2_Y!2_2O%-6./%4O\ O5[5X0.=)7Z4 =#1110 4A('6@D"
MJ.HW(AASF@"X)%)QFGUS5GJ@DN0NZNC5U*CF@!U%&:* "BBB@ HHJ*:0+$QS
MT% #O-7.,TX'(KE9=7"W!7=WKH;*82VZMGK0!:HHI,B@!:*** "BDR*6@ HH
MHH *0L%'-!('6J&IW0@@W9H NB13T-/KF[#4Q+,%W5T2L"!S0 ZBBB@ HHI,
M@4 *3@4T,&Z5#=3+' S9Z51TV]$SL,]#0!K44FX>M+0 4444 %%%% !7(?$4
M9\-3?0UU]<?\1CCPS-]#0!YQ\-!AS_O5[G!_J5^E>%_#,Y<_[U>Z0?ZE?I0!
M)1129&: %II<+U-*2!UK#U34! ^-U &VKANE.K&TB^%QGFM@,#T- "T444 %
M%%% !2$@=:-P'>J.I7(AASF@"\"".*6J.G7*S0;LU=W ]Z %HHHH ***0D"@
M!"X7J:%8-TK%U._$$F,U-I=Z)_XJ -:BDW+ZTM !1110 44A(%&0: %HHSBD
MWKZT +12 YHR!0 M%)D&@D"@ )P,FFB12>M5[ZX6*W+9K#MM5#SA=W>@#IZ*
M9&X9%.>M/H **** "BBD) ZT !8+UIHD4G -4-4NQ!'G-9VG:F)KC;NH Z.B
MFAUQUIV: "BBB@ HI"<4H.: "BDS2;U]: '44@(-+0 4A.!FC</6H+J98X&;
M/2@"97#=*=6/I=\)Y&&[H:U]P]: %HHHH 0G R:\0^+DBMK%I@_QBO9K^80V
MCOGH*^>/B'J7VK6H><[7% 'NGA)@?#]L,_PBMVN-\#WHDTF!,]%KL-Z^M #J
M*0$'I2T %%%)N'K0 M%-WKZTN]?6@!:*0'-+0 4444 %!.!14%S*J0LV>@H
MD\U<XS3P<BN4_M<?:=N[O726TH>%6SUH S?$3;;%OI7@5O(3\08O]ZO>_$?.
MGM]*\&M(\^/HC_M4 ?1UK_QZQ?[HJ:H;7_CUB_W14U !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% ')?$'
M_D7I/I7DG@DYU)?]ZO6?B'_R+LGT->2>!O\ D(K_ +U 'T):_P#'M'_NU-4-
MK_Q[1_2IJ "JM_<"WMRY.,5:[5Q_B[64M[)TW8- &5K'BQ(T9/,_6N5B\3A;
MC=O[^M<9J5Y<7ER2C$C-0+8WA&X9H ]BL_&2,$3S/;K7>:?<"YM%D!SFOE]9
M[NSN(RY( 85[MX/UV.;3(8RPW8]: .UHID;AUR*?0 5CZUJ0L(]Q.*UI'V(6
M/:O+OB!K@$12-N10!'KGBU9(B@D_6L73_%(AF#%_UKA&:[O93@D@TKZ;>JN1
MF@#VBS\9),RKYGZUV&EWPNTR#FOFFSN+NSN%\QB,&O8O!.N+)&JLW.* /1ZX
MSXA'&DGZ5V,;!T##O7&?$,$Z2?I0!YQX.3.MHWO7J6KZ\NG[5+8XKRCPO=I:
MZDI8]#5GQKJ[W-XJ0MU]* -G6/%*SDX?]:KZ)XJ6&<Y?OZUPZ65Y*I)SS5&:
M&[LWW'(H ^AM%UY;^4*&SFNGKP?P+K;)?*LC=Z]PM+@7$(=30!8K)U7419C)
M.*UJX/QU.\4;%3VH VM)UI;V5E#9Q536/$2V18%\8K@/!^N&*\F$C>M97BS5
M9+JYD6)ORH TW\5#^U_,\SC/K731^-4*@>9V]:\;2QO7'F#.:23[;;C+$\4
M?1WA_6%U)<ALUOUXU\-=<V?)*W)KV*&021AQWH ?1110!#=2^5 S^E<9J'BM
M+:0J7Q@^M:WB754M+.12<'%>#ZWJ4]U=/Y;'K0!W6M^+UF"XD[^M7].\9HEJ
MJF3]:\D:UO9USS37%[;J 2>* /HG1]=6^VX;.:Z4<@&O"_!>MM%-&DC<U[58
MW2W,*LISQ0!;J&Z_X]9?]TU-4-U_QZR_[IH ^>M6&?%4O^]7M/A 8TE?I7B^
MJ?\ (UR_[W]:]I\)?\@I?I0!T-%%07%PL"DGM0!0UC4!8Q;B<5P6L^+D9"@D
M_6G>.=?5H2D;<_6O)Y#=W<Y()(- '<67B817(<O^M=A8^,$F*KYGZUXR]C=I
M%D9S3K"[N;2=?,8\&@#Z4TV]%T@(.:T:\\\%:VLT:J6R<5Z"C;T##O0 ZBBH
MYI!&FXT 1WDP@MV<GH*X/4_%Z1;T\SVZUJ^(]>CCL)4##=CUKPG4[JYN[Q]C
M$@M0!UT_B/-SOW]_6NKTGQ>GDHGF?K7DOV"[:,-S26TEW:S#<2 #0!],Z7=B
M[MA(#FLO4-:6VU)("V,G%87A'7D7351V&['K7*>(]8+^+[=$;@M0![/"^^)6
M]13F.$)]!5;3SNL(3ZJ*FG.('/\ LF@#G+K7EAN3'NZ&MO3[D7, <'->-Z_J
M4D>M2*&_BKT[PA,9M)5B>U '1444R1PD98]J ,G7-3&GQ;BV*X#6?%Z2QE!)
M^M.^(6N PF.-N1QUKR;%Y=3$@D@T >@:=XG$4X)?]:[G2O%"74B('SGWKPMK
M.\B7=S6MX=U2:UOXQ(QP#0!](Q-OC5O44^LC0]22]M4VG/%:] !6!JNL+9DY
M;&*VII!&A)KR#QMK16X=$;F@#8U#QDGE,GF?K63IWC!;>4YDZGUKSG_3+QR5
M)(S4-W97T1##=0![KI_BM+E@ ^<^]=E:3>= '!ZU\V:'J4]M.@D8]:][\-7P
MN-.CYYQ0!OT444 %%%% !7&_$C_D6)OH:[*N.^)'/AF;Z&@#S;X8?>/^]7NT
M'^I7Z5X3\,1AC_O5[M!_J5^E #G.U&/H*P+?65DU-K?=T-;ER<6TA]%->-6F
MM&'QG,C-P&H ]'UK6EL$8EL8KSC5/%BW,QQ)W]:;XWUHSHZ1-R17G=C:7MPQ
M8Y/- 'IND^+%M>LG7WKN?#OB!=3EVA\UX%>V5["NY=W%=3\.=9>UORL[=^]
M'OU%4K.]2Y0,IZU=H *9(VV,GTI]9.LZ@EG;/N..* ,?5?$:V;$%\8KE=6\8
MI+#M$GZUR'BC69+BX=8F[USBVU].N?FP: /4=+\9I%"%,GZUU&E>)5O'4!\Y
MKP"2VOK<Y^; KH?"^M26UW&LK=Z /HV-MT8/J*=65HNHI>VR;3GBM6@ [5SN
MKZRMD3EL8K9O+E;:(LQ[5XYXSUTR3ND;?K0!9UCQ0LUQP_?UI^F^+5M>LF/Q
MKS5$NKF7=DGFDU"WO(]NW- 'MUCXO2X< 2=3ZUVEE/\ :+=7!SFOF32]0N+2
M9#(QZU[OX2UE+JQC3=DXH ZVBBB@#!UK5A8.H+8S4^EZB+L#!S7 _$R]>VNH
M@IQDU?\ !^H$1*SGM0!VNKWHLK8R$XKCAXR3[3L\SOZU#XV\0(;%HT8;L>M>
M06EQ=SZJ,,<9H ^E-(OA>P[P<\4S5M1%F.3BLKP4LBV \SKBLSQ[<-"GRF@#
M=TC65O9BH;.*DU?5A91EBV,5YQX(U9OM\@=NE2^--;\R-XXVY^M %S5/&2/"
MR"3]:P+3Q($G#%^_K7!,+RXDX)Q4S6MU%"6YH ]RT3Q.EWM4/FNSA?S(@WK7
MS=X5U:6UNU$K=Z]ZT'4TN[5 #DXH VZ*** "L/6]5%AU;%;$T@BB+GM7DGQ!
MUS+[(V_6@"WK?BE9(\!_UK%T_P 3BWN-Y?\ 6N++7-V>"34%U97B1;ES0![)
M9^-$FD"^9^M=KI=X+N'<#GBOE_3KJ[M;E6D8X%>W>"-=26V5&;G'K0!Z%134
M;<H/K3J ,S6K\6%MYA.*71KX7UKY@.:YKXDW#6^BEE.*K^ M4!T(.[4 =7J=
M^+122<8KC[CQHD4^SS.^.M5?%^OJ$=5;FO'[JZN[G4%*,<;J /I'1=6%^JD-
MG-:.H7(MH=Y.*XCP$DPAC,F>E;_B^<P:86![4 9=YXK2 GY_UK$OO&R-;LOF
M?K7G>IW]Q<3,J,>M9$EIJ#G^+F@#TK0_%JQS,3)U/K7;:;XC6Z< /FOGU(+R
MU.3D5U/AK69(;A1(W>@#Z"@D\R,-4M9&AWBW%DA!ZBM>@#C?&&LBSMY(]V,B
MOG'Q)J'GZJK;L_/7LGQ*BG>9BF<5X)K$4BW@W==U 'L7A3Q0ME9Q@OC ]:ZL
M>.(^/WGZUXA8Q73VR"//2KRVNH<?>ZT ?2VA:@-0LQ*#FM6N.^'J2IHBB7KB
MNQH 9,^R)F]!7&:AXI2VF9=_3WK;U_5$L;60,<$BO!];U.:ZOY/+8]: /3#X
MVC!_U@_.I8?&2.P'F?K7C)BOFYRU.CEN[=@6)XH ^D=&U 7T.X'-:M>8^ ==
M4VXC=OF/O7ID;;T##O0 ZBBHII1$F30!!J5R+6U:0G&*X#4O&*!'3S/UK2\7
M:]&NFR(K#=CUKPNYGN[JY;:QP30!VR^(LW.[?W]:[#3?%R,B)YGZUX^EE=!-
MW-+:W5S;7*[F. : /H'4K@76C>8#G(KQ.T<#Q[$/]JO2+'5DG\/JA;YMM>86
MI)^(,7^]0!])VO\ QZQ?[HJ6H;7_ (]8O]T5-0 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!R'Q#_ .1=
ME^AKR3P-_P A%?\ >KUGXC''AN7Z&O)_ (S?*?\ :H ^@[7_ (]H_I4U16W_
M ![1_2I: (IY5BC))QQ7@GQ UMSJ,D*,2,]J]>\67_V'3V?..*\!N2=8\0XZ
MY- &QX3TEK^,.ZYSZUZ+:>%(VAR4'2G^$]"%K:K\O:NV@@"1XQ0!X=XUT'[&
MF^-.G/%9?@K7I(M3%N[$ '%>O^*-%%[;2?+G@UX3-"='UYSTPU 'TOI4PGM%
M8'-7ZYCP3=_:M&1\YXKIZ ,[6+I;>PE);!"U\[>(=2EU#4Y(U)(#5ZK\0M9^
MQ1-&&QN&*\U\+:9_:^INY&<MF@#?\(^'A<["Z=?6N[;PA"5^X/RJ_H6CBR"_
M+C%=+@8Z4 >"^--"^P.S1IT]*Q_!NJ30WRQDD?-BO8?%FC"]A=MN:\MMM(-C
MJR87'ST >\Z:_F6$3'N*YOQZN[2C]*Z'2.-,A_W:P/'7_(*;Z4 ?/LVHM::@
M0IQ@UJ:89=6U6'<"037,W>9M?\OU->O>"O#N3',5Z8- '66?A2+[+&=@Y6N;
M\7>&E@MRRH.E>KPH$A5<=!63K]@+RW88SQ0!\W6MU)INJ'J,&OH3P9?B[TA&
M+9.*\1\8:7]@N&D QS7H?PVU$MIT<>?2@#U*N \?#]PY]J[Y>5%>?_$)MMK(
M?:@#Q*+5&L[Z4*3R:UM$CEU34,N"037((QGU=D_VZ]O\&>&PMO'/MZT :^G>
M$HGM02@Z>E8/B?PPL$#E$' KU>TA$407%9FL:<+N)EQG- 'SMIE]+I6KQQ\J
M"]?1^@W:W&EPMG)*UX-XUTG^S-4CD Q\V:],\ :J;JWCBW9P* /0J9(XC7).
M*?6+XEO/L>F/)G&!0!Y9\2-<9+MHHVZGM7*^&;!]1FW.I.3WJOJ]X=9UQ5SG
M+5ZEX2\."WA1]G49H ET_P )QO",H.GI6/KWAE8D;:@KU.UMQ$F,51U/3A<(
MW% 'SC]HETW6 O( ->[>!M4%W8#<V3BO+?&FA_9)WG"XQ6C\.]:*E82W?% '
MN@Y%0W7_ !ZR_P"Z:= VZ%&]13;K_CUE_P!TT ?/.K\>*IO][^M>U>#S_P 2
ME?I7C6KIGQ1+_O5[-X0&-)7Z4 =#7,>*K\6EI(<X.*Z>O+?B9J/V<>6#UXH
M\LU+59M0U)HP21NQ7>^&/#HN(49TZUS'A+1/[2U N5SELU[=HVE"TA5=N,4
M<Y+X6CZ;!7GOB_1S8,S(O3TKWIX 3TKC_%>A"[MY&V]J /*O ^LR0W@1V(^;
M%?0FF3B:SC8'.17S1/$=&U90./GKW3P=J/VJSB&<\4 =A67KL_V?3W?.,"M2
MN8\;7 @T.1L]J /%_$VORRWIA5B03BKGAC1C>D.Z=>>:P["T.JZH&QGYJ]H\
M.Z"+2!#MQQ0!2A\+1F'[@Z5R?B/0/LRLR)TKV-8 J8Q6)K&CB[C8;<T >'6>
MLS6-P(B2 *A_M WGBVU;.?FJ_P"+M).G2O(%QBN3\-3FX\2VY)Z/0!]8Z9_R
M#H/]P5-<_P#'M)_NFH=,_P"0=!_N"IKC_CVD_P!TT ?/OBAR->E_WJ]<\"'.
MB)]*\D\4)G79?]ZO7/ @QHB?2@#JJSM9NUMM/F);!"UHUYQ\1=:^PQ-$&QN&
M* /*-9U.74=8DB!) ?%=OX=\-K-;([)R:Y3PGIG]J:LTA&<MFO<=)TP6UNJ[
M>E '+WWA:,6A(0=/2O+-?M9--O-R*1@U]'7%L'@*XKS/QGX=#VTLNWI0 _X7
M:R;I"LC=..:]6!W#(KYV\"WQTW4#%G&6Q7T#82>;9QOZB@"GKD_D6C-GM7SM
MXFOWN=>,8)()KWCQE+Y6F,?:O"K:T^W^)EXSEJ .]\&>&ENK(.Z#..XKHK[P
M?$;=CL' ]*W_  WIXLK)5QCBMF9 \3+CJ* /F[7=.DL;WY%/#=J]/\"7$C6\
M:MGI4NL>%Q=SEMG?TK:T#1_L*J,8Q0!TPZ4M%% !1110 5R'Q%_Y%J;Z&NOK
MC_B,<>&9OH: /./AH,.?]ZO<X/\ 4K]*\+^&1RY_WJ]T@_U*_2@!EY_QYR_[
MIKYAUS4FM/&4Y!Q\U?3U[_QY3?[AKY)\6N?^$RG'^U_6@#H;::;5;]5()4UZ
MCX?\*1FW#%!T]*YWP+X>^T6\=P5S7K^G6PMX0N.U '(ZGX2B-G(VP9"^E>+:
MD\FB:JVT%1OKZ@N(Q) ZXZBO"OB3H?D-YP7J<T =WX&U7[9919;)(KOZ\1^&
ME^?M$<&>E>VCH*  D*,FO+OB3K)M5V(W7TKTC4)?)M'?T%> >.]1-[JB1 YR
MV* ,/2DFU*_^8$@M7L.C^$XY+%&*#)'I6/X4\*@6\4^SKSTKU*P@$%LJ8Z4
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
MJ$]167X@G2>Q?O\ +0!Y'X(S'XP,?HU?0B_='TKY[\)''CQ@/[U?0B_='TH
M@O?^/5_I7@GCL@ZW!_UT%>]7_P#QZ/\ 2O ?')QKD'_704 >V^%E T&V_P!T
M5M5C>%O^0!;?[HK9H *Y3QE?>1I,ZY_AKJZ\S^(UT4MI8P>HH \T\+P'4M9D
M8\X>O?\ 1[806<8QC KQKX5V?FWTK,,_,:]TC39"H':@"P,8J*= T9&*D3I2
ML,B@#Q'XCZ=^_:4+TJW\'[@R22(3T)K>^(%D)+"9\=!7&?"&Y^SZA.K'^(T
M>\,<*3Z"O)OB7JF^R> -7JC/NM68?W:^?O'=TTNIR19[T :/P[TWS)(YBO>O
M<88PL2@#M7G/PWL@NF(Q'->E#[HH ,"HYHU:)ACM4M(>AH \&^)FDD++*%]:
M\V\ QE/%T(/]ZO?OB-8+)I;MCG!KP_PC%Y7C2%?]J@#ZOM/^/2+_ '14U0VO
M_'K%_NBIJ "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** ..^(QQX<E^E>4> >;Y<_WJ]9^(8W>'91[5Y/X&
M^34%'^U0!]!6W_'M'_NTZ4XB8^U,M?\ CVC^E.G_ -0_TH \1^(]Z6WQD\9K
M8^'3QIIZ,2*Y+XD2XN)/K47A76S;6"C=B@#WW[=%@?,*7[=%_>%>4CQ0VW[_
M .M*/%+$'Y_UH ]6^WQ$8W"O/OB4T4FE$@CI6/%XJ8N1O_6L#QAKQN;#;NS0
M!-\/Y\:C&@/>O9M??9H4C?[->#?#N8MK$?UKW7Q)_P B[+_N4 ?/TI-WX@7/
M.)*^AO#T BTJ#C^&OG_3(O,UW/\ TTKZ)T<8TR$?[- %^BBB@ HHHH *XWX@
M?\@D_2NRKB_B&<:0?I0!Y?X/A!\1(WO7T#%_JE^E>!>##G74^M>^Q?ZI?I0
M^BBB@#B_B$@?22/:O,/!K[/$")[UZEX__P"02?I7D_A$_P#%3)_O4 ?0T7^J
M7Z5PGQ /^AR?2N[A_P!2GTK@_'__ !ZR?2@#SWX66XD\0S$_WJ]^C78@%>'?
M"I,:[,?]JO=* "BBB@#A/'D>ZUD/M7$_"T8UV8?[5=WXX&;23_=KAOA?_P A
M^?\ WJ /;F^X?I7@OQ!G+:J\?O7O+_</TKY\\>'/B%A[T =I\,[4?8MV*]04
M84"N ^&L>-,_"O0* "BBB@"K?Q^9;D5\^>-8OL_BB-QV:OHF9=R$5X%\2(]F
MO*W^U0!Z;X&NS<6: GHM===?\>LO^Z:\\^&<N^WQ[5Z'=?\ 'K)_NF@#Y[U0
M?\57+_O5[5X2_P"04OTKQG55_P"*HE/^U7LWA+_D%+]* +/B1MNBS'VKY^B3
M[5KP[XDKWSQ8VW0+@_[)KPOPNGVG6G/I(: />]!A$>EP_P"[6K5/3%VV$0]J
MN4 %(>M+4;'YJ .)\>6@FLY&QT6O*O DA@\02J/[]>T>+(M^G3'_ &:\7\)K
MM\2S?[] 'T'9/OL@?:O ?&K;_%K)[U[WIW_(/'TKP'Q=SXW(_P!J@#U7P%;"
M/3QQVKM^U<IX+7;IR_[M=2IS0 B?>J2F@8-.H RM?C\S3W'M7SWJ$(A\;6X'
M_/3^M?1.KC-FWTKY^UL8\<6__72@#Z%TO_D&P?[@J>X_X]Y/]TU!I?\ R#8/
M]P5/<?\ 'O)_NF@#P+Q/_P AR3_>KUGP+_R!5^E>2^*3C6Y/]ZO6/ ASHB?2
M@#:UIMNF2GVKY]UF19-<3)_CKWSQ&VS1IC_LU\SZK?'^V2<]'H ^AO#4\,6F
M0_,/NUN'4(O[PKQK3/$S164:[^@]:M)XK8R8W_K0!ZU_:$6/O"F37T30L-PK
MR=_%;"3&_P#6I?\ A*&:/[_ZT 87Q)>,ZG$P(X:N[^'MX9;>-,]!7CGC#53=
M7\7.?FKU/X8L6CC^E '<^)H//L"N,\5\\ZGYEAXDW $ &OIB^@\Z$K[5XCXW
MT7R;EYPO2@#I?"VO*ZH'?M7HL&HQ21KAATKYDT_79+*7;N(P:[W0_%C2[07_
M %H ]I257Z&I*YO0=2%R!ELUT8.10 M%%% !1110 5QWQ(_Y%F;Z&NQKCOB1
M_P BS-]#0!YM\,/O'_>KW:#_ %*_2O"?AA]X_P"]7NT'^I7Z4 ,O/^/27_=-
M>#Z5:K-\0Y@1_%_6O>+O_CTE_P!TUXCH)_XN+-_O?UH ]NM(1#"%'I4](OW1
M]*6@ JAJMN)K.7/]TU?J"\_X])?]TT ?.NGJ8?B!*%_O5] Z4Q:T4GTKP[38
M!)\0YO\ ?KWBSC\J #VH \V^(]Z8XY(@>M8GPGLQ)<2N1W-6OB:W^E,*F^$B
M8,A]Z /6T7:@%.HHH **** "N0\;W9MK%L'JM=?7 _$=MMC^% 'EGA:/[7XM
M9CSEJ^A=/B$-LJCTKP?P%%N\2;O>O?T&V(?2@"3K0!34.13Z $QP:\W^)]F/
M[(9\5Z37#?$M=VAM]* /-?A].4OXX\]Z^@(O]4OTKYR\#OMUV-?]JOHR#_4)
M]!0!XQ\9E#%:YOX26(EU4Y'>NC^,I_>H/6JWPC@V7N['4T >X01B*(**EHHH
M *\[^(O^H8>U>B5YW\1/]4?I0!YYX!L@^N2''\5>^6J>7;*HKQGX;Q;M9D_W
MJ]M5<(!0 Y.E.I%&!3&/S4 $PS$P]17B7Q1M0H5L=Z]MD^Y7D/Q73;;*: +?
MPXNS]FBBSTKMO%S[-$D/M7F_PV?YXQ7H/CAMGAZ4^U 'AMC']I\1QGK\]?0V
MEPB*PAQ_=%?/_A=?.UI6]'KZ)LE_T*+_ '10!:'2EIC' IR]* %-<5XYLQ)I
M4[8_AKM:Y[Q;%OT:?_=H \1\ W!M=7D7I\YKZ%T]]]FC>HKYR\/?N=<;_KI7
MT1I!SIL1]J ..^*HSX?;Z&O%/ MCO\0QMCC=7M?Q4/\ Q(&^E><_#NQ#WT<N
M.] 'OEC$(K:,#^Z*M4R$8A0>U/H *CEE6)<L<5)7/>*M0%EIY<-CB@!VLZM$
MEFV'&<5YW+KK>:<-WKG-2\6O,YB#]?>LP7;NI:@#N4UTEU^:M&\U97L3EOX:
M\TCOGW=>E%]K;I 5W=J +_@V3S/';$?WJ^BE^X/I7S3\-Y#/XL\P]S7TLOW!
M]* (+W_CU?Z5\_\ C_C7;?'_ #T%>_WW_'H_TKP'QW\VNP?]=!0![;X5_P"1
M?MO]T5M5B^%O^0!;?[HK:H *\?\ B9/MN"F>M>P5XA\5Y=EX: +'PN,44CL2
M.M>L?;H0,;A7SOX+ULVS/\V*ZZ3Q6P/W_P!: /6Q?Q9^\*=]OB/\0KRH>)V\
MK=O_ %J-?%3$_?\ UH ['QC-#)H\_P P^[7D'@:Z^SZS(%/5S6SXA\2-)82I
MOZBN.\$3-)JY;U>@#Z;MGWZ3N]4KY\\3MYWB>6/_ &J]^LC_ ,2/_@%?/6IM
MYOCF5/\ :H ]I\!V_EZ0O':NQKGO"4?EZ8H]JZ&@ HHHH Y;QK!YNEL/:OG_
M $6+RO'L2_[5?1WB6/S-/8>U?/MI%L^(40_VZ /I>T_X](O]T5-4-I_QZ1?[
MHJ:@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@#DOB!_R+TGTKR?P2O_$Q7_>KUCX@G'AZ3Z5Y3X'.;]?]
MZ@#WVU_X]H_I3I_]0_\ NFDMO^/:/_=I9_\ 4/\ 2@#YU^)7_'Q+]:YC1W(M
M!BNI^)2?Z1)]:SO#>BR7.GJX4T 1^:P3K3%G;D9-="WAV7;]TU#_ ,(Y+N^Z
M: ,6*1@Q-5=4W318KJQX=E ^Z:9)X;D8<J: (_AY9%-4B;'>O;/$@_XIZ4?[
M%<+X1T4VMTC%<8KO?$G_ " 91_LT >$:1\NN?]M*^A-)_P"0;#_NU\[6,H37
M@/\ II7T/HQSI<)_V: +]%%% !1110 5Q?Q#&=)/TKM*XSX@G_B4GZ4 >9^#
M%QKB?6O?(O\ 5+]*\'\'?\AM/K7O$7^J7Z4 /HHHH X[X@?\@D_2O)O"/_(S
M)]:]7^()QI)^E>3^#SGQ*GUH ^B(?]2GTK@OB ?]'?Z5WL/^I3Z5Y_\ $+_4
MM]* .4^%H_XG4I_VJ]NKQ+X6G_B<R_[U>VT %%%% '&^-A_H4O\ NUP'PN/_
M !4,X_VJ[_QLV+*7_=KS[X6C_BHI_P#>H ]Q?[C?2OGKQU_R,K?6OH5_]6WT
MKY\\>+CQ$S>] 'I?PW_Y!GX5W5<#\-9 =,_"N^H **** &2'"&O"?B2-VL ^
M]>YW!Q&:\(^(<H.MJOO0!U_PN&(3]*](NO\ CUE_W37GOPTCV6^?45Z%=_\
M'I+_ +IH \ U/YO%,H_VJ]F\*#&EK]*\6U)MOBR7_>KVGPHV[2U/M0 OB_\
MY%ZX_P!TUXEX*XUB3_KH:]O\6#.@7'^Z:\,\+.(M:<>LAH ^A=/_ ././Z5:
MJIIAS81GVJUGF@!:C8?-4E% &#XE7.ES_P"[7A?AJ3;XGF'^W7N7BB0)IDX_
MV37@_AS)\3S'_II0!]#Z6<Z:I]J\"\8?+XU)_P!JO?-(_P"08OTKP;QTGE^*
M6D]Z /7?!#[]-'^[75J,5POP[NA+IHY[5W@H 6BBB@"AJO\ QYM]*\"UM<^-
M[<_]-*]VU^<0Z>[$]J^?[Z]6X\:08/\ '0!]%:7_ ,@V#_<%3W'_ ![R?[IJ
M'2_^0;!_N"IKC_CWD_W30!X#XI&=;D_WJ]8\"#&B)]*\H\3_ /(<D_WJ]9\"
M_P#(%7Z4 7_%'_("N/\ =KY6U8G^UI/]^OJKQ.,Z)./]FOE_4K4OK##'5Z -
M&V9A;K]*E0LK9K<L] D>TC8*>15D^'9-GW30!S3%BV:>)6"]:Z(>'9-GW343
M>'9<?=- '$7MNUU>QG&>:]N^'5L88H^.U<1;>&G-PI*'@^E>K>%;'[+&HQCB
M@#K",BN,\5:/]MA<!<YKM*BE@20?, : /FO5O"[V\Y.S'-9\9;37&>*]R\0:
M+')(2J"O,?$GAV3)**10!K^%?$H655+]Z]BTZ<7%HLF>HKY?M3-IETNXD?-7
MOG@W5UNM.B3=DXH ["BBB@ HHHH *X[XD?\ (LS?0UV-<=\2/^19F^AH \V^
M&'WC_O5[M!_J5^E>$_##[Q_WJ]V@_P!2OTH 9>?\>DO^Z:\0T'_DHLW^]_6O
M;[S_ (\Y?]TUX?H)_P"+C3?[W]: /=E^Z/I2TB_='TI: "H+O_CTE_W34]07
MG_'I+_NF@#P?3IA%\09C_MU[K92^;;AO:OGP,5\>38_OU[QH;%K%2?2@#R[X
ME\W^/>M'X5)M#51^)0_T[=[U?^%<@<.!0!ZI1110 4444 %<!\21FQ_"N_K@
M_B*,V/X4 >?^ .-?'UKWD<QCZ5X!X%F \1[?>O?83NC'TH <@P*?110 5Q/Q
M&&=%;Z5VU<1\17QH[?2@#R;P8N/$,?\ O5]&0?ZA/]T5\\>#.=?C/^U7T/!_
MJ$^@H \8^,0S<QCWJQ\+8=DJG%,^+JYNXOJ*TOAM%M"'% 'JE%%% !7GOQ"&
M8C]*]"KS_P"(!Q"WTH Y;X:#_B<R?[U>TUXC\-I0-;D_WJ]L5LB@!U,8?-3Z
M:3S0 UQ\M>4?%D9LUKUEONUY+\6' M5H SOAM_KXZ]"\>_\ (MR_2N ^&Z_O
MHS7H/CI=WAR4>U 'B_@O_D*#_?KZ)LO^/./_ ':^=/"3>5JR@_WZ^B=/;=9Q
M?[M $[C-.7@4M% !6)XG_P"0+/\ [IK;K!\52;=%G_W: /!M*_Y#K?\ 72OH
M?1?^07#]*^>-#_>ZZV/^>E?1&CC&FQ#VH XWXK?\B^:Y+X:Q91&QWKK?BKSH
M!KFOAH/]'3ZT >R1_P"K7Z4ZFI]Q?I3J &N<(3Z"O)OB'K>+=X0W2O5K@XMY
M#_LFOG7QI</=ZW+ "3STH Q=)TU]0N0V,Y-=W!X5;R0-G;TJ;P/H>U$9UKU.
M+3X@JC:.E 'D9\*,F?D_2L76/#3K$3M[5[M/IT1'""L'6M*C:U?"#[IH \@^
M'-N;?Q5L(Z&OI%?NCZ5X%X3B$/CAD Z-7OJ_='TH KWW_'H_TKP/QR,:Y!_U
MT%>^7W_'J_TKP3QV?^)Y!_UT% 'M?A?_ ) -M_NBMFL;PM_R ;;_ '16S0 5
MX7\7!F[->Z5XE\5H]]T: /+] )61_K6U,6ZU'X7TI[F1\ ]:ZF3P[(1]TT <
M_P"<WD@9J!96#]:Z/_A'9?[IJ,^')=_W30!S5_NFB8>HK<^'6B-)=[]O\6:N
M_P#".2,.5-=YX"T46A)9* .VCC\K263T0U\Z7J[?'LK?[5?2EP +20#^Z:^<
M=67;XTE;_:H ]W\+-NTU?I6]7.>$&W:6OTKHZ "BBB@#)U[_ (\F^E?/\?\
MR42+_?KWWQ$^RP8^U?/]O)O^(<1_VJ /I.U_X](O]T5-4-K_ ,>D7^Z*FH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH Y#XA_\B[+]*\E\#$_VBO^]7KGQ!&?#TGTKR3P2,:DO^]0!]!6
MO_'M']*?-S"X]J9:_P#'M']*E894B@#P'XF6S!W;'>NJ^'%A#/H2;L9Q4/Q5
ML FG&7%5?AGJ.VWC@S^% 'I']@PD?='Y4G]@0_W1^5;J\H#[4M &%_8,7]T4
M?V##_='Y5NTA('6@#.M=,CMV! %0>)1G1)A_LUL @]*S=>3?I4J^U 'S@&,7
MB)0>\E?2&A'.CVY_V:^<]7B^S>(XN,9DKZ'\.2J^C6^#_"* ->BBB@ HHII<
M*>30 ZN*^(G_ ""3]*[4<BN,^(0SI)^E 'FW@L'^VD^M>\Q?ZI?I7A?@U?\
MB<)]:]TC_P!4OTH ?1110!Q'Q&.-'/TKRCP6<^(X_K7K'Q%&=(/TKR3P8<>)
MD'^U0!]'0_ZE/I7G_P 0A^X?Z5Z!#_J4^E<%X_&8'^E ''?"O/\ ;4O^]7N-
M>)?"Y<:W+_O5[;0 4444 </XZ)^R2?2N&^%W_(?F_P!ZN^\;IFRE/^S7G_PN
M/_%0SC_:H ]Q;[A^E>"?$*$KJKOCO7OA^Z?I7C7Q&M<&23% &Q\,+@?V?@GM
M7IHY KQ;X:7NR,)GO7L\1W1*?:@!]%%% %6\;;"2:^?/'<OF^*8T'=J]YUN4
M163-GM7S]K+?;/&$/?YZ /7O 5L8;-"1U6NQNO\ CUE_W365X>LQ;V$)QC*B
MM6Z_X]9?]TT ?.^M$CQ3+C^]7M7@PDZ.N?2O&-67=XJE'^U7M/A!=NDJ/:@"
MSXH&[0YQ_LU\_P"FO]GU[!XS)7T+KZ;])F7VKYWU$&TU].V9* /HO1G#Z7"?
M]FK@^_6+X9N!+I4'/\-;H'.: '4444 <=XUN/*LI5SU6O'_"41E\02D?WZ]&
M^(]V(HF7/45Q?PUM_M.M2,1GYJ /<-,7;IZ@^E>)_$>S9+^28"O=H(_+A"^U
M><_$C2@VF2S[><&@#,^%U^/L>PGFO6XSE :^=OA_J1MKM8BV/FQ7T%9SJ]M&
M0>HH M4A.!1N%133*JGF@#D_'-\(='EP><&OG73KMKCQC 2?^6G]:]:^(>J9
MMY8@WK7C?AM2WBJ!C_?_ *T ?76E?\@RW_W!4]Q_Q[R?[IJ#2_\ D&P?[@J>
MX_X]Y/\ =- '@'BK_D-R?[U>L^ _^0(GTKR?Q0,ZY)_O5ZSX%&-%7Z4 :OB%
M=VD3#VKYWN[8+KHW#K)7T?JR;]/D7U%?/WB=/LFMQGI\] 'L&AZ1#+I<)P/N
MUI_V%%C[HJAX/NQ-IT*YS\M=70!B?V%%C&T4W^P8O[HK=HH PTT*)6SM'Y5I
MVUJL X%3E@IYIPY% !1110!5N+59CR*R-0T**:%B5'3TKH::Z[D(H ^<_'VF
MFQ?<BXP:W_AEJ3R31Q,:V?B1I0>W+;:Y3X<'R]>$?H: /H =!2TB_='TI: "
MBBB@ KCOB1_R+,WT-=C7'?$C_D69OH: /-OAA]X_[U>[0?ZE?I7A/PP^\?\
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
MQZR_[IH ^?-3_P"1KE_WOZU[5X3_ .04OTKQ/53CQ7+_ +W]:]J\(G.DK]*
M->_B\VT=/45X!X_LC8ZK')C'S9KZ((R,&O)?BAHYN3YJ+]WF@#3^'^K"YMXX
MMW05Z.#Q7SWX!UC[!J!B=L8..:]NL-36YC4@YS0!KU%.X2(G/2HVN .]8FMZ
MPMM:OE@.* /+_B=J>;E8P>IQ5SX5VNVZ\S'6N,\47#:SJJ;3G#=J]7^'^F&U
MMXV*XXH ]$KF_&=M]IT21,=17250U>'S[-DQGB@#YC\TZ-K [8:O8?#'B<7<
M*+OZ#UKSSQMX<D%VTR*0 <\51\,:B^GOM=B,'O0!]"+? Q9SVKFM;\0"W5AN
MKFH_%Z>5M\P=/6N9UO56O"VUNM %77+\ZG<,N<YKG](LOLWBBW&/XJZ/2-'D
MF83,"15::,0>+K9<8^:@#Z,TS_D'0?[@J:X_X]Y/]TU#IG_(.@_W!4UQ_P >
MTG^Z: / ?%)QK<G^]7K/@0YT1?I7D?BHYUR0?[5>M^ _^0(GTH Z6Y3S(&7U
MKPCXEVOV:_1\=&S7OA&17E?Q.T@W2F15Z"@!OPTU3[1MBW=.*]7KYT\ :D=*
MU1D=L8;'->ZZ;J:WB @YS0!K445C:KJRV(.6 Q0!5UO519W,:;NIK;LY/-M4
M?U%>1:[KPU#580CYPW:O5=%).EPD_P!V@#0I,CUK/U:^%C;^83BN<@\6Q23[
M-XH [2BJEC="YCW YJS(VU"?2@#A/B*0+(_2O.OA_P#\C/\ C75_$?5E\GR]
MP]*P?AW9EM66?'!- 'NB_='TI:0?=%+0 4444 %<=\2/^19F^AKL:XWXD?\
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
M7K_PXTD16 9UYQ7G_AK1S>WR,R9R?2O<]#T\6-JJ@8XH U5&% J*[_X]9?\
M=-35%<\VTG^Z: /GC5P?^$JE_P!ZO:O!_P#R"%^E>0ZI:LWB>4[3]ZO8?"B%
M-+4'TH WZPO$FG)=Z=,2,G::W:BN8_-MW3U% 'RO.D^EZ[*P!"[Z]5\+:\I@
M0.W./6LGQ[X>%J6G5.3STKA;#5IK2;9D@"@#W:77(L_>KA/&.MEH76-NH]:Y
M9O$<Q?[QJE-=RZA<*AR030!9\(64NH:AND&?FKZ%T:R6VLX\#M7GO@/01&H<
MI[UZI"FR)5]* 'TR1 ZX-/HH Y7Q'H<4]A*VWG'I7A&K:7<6T\GEJ>M?35U%
MYT#(>]<=>^$X[AV)0<F@#YZ5=0$N,-UKH=,T^YG*[U->I?\ ""Q[L^6/RK2M
M?":0X^0<4 5-)TA(=$WLO.*\PU88\;6X']^O<;^$6>CLO3 KPZ\_?>,H&_V_
MZT ?0VE_\@V#_<%3W/\ Q[2?[IJ'3/\ D'0?[@J>X_X]Y/\ =- 'SYXF4G7Y
M/]ZO7O HQHJ_2O,O$5HS:U(V#]ZO4?!B%-(4'TH Z6L7Q!IR7=A+D9.VMJHY
MT\R%D]10!\O:K!-I>L2,H(&^O3O!FO#R8Q(WZU2\>^'Q&&E5.3STKSZVU6;3
MY=HR,4 ?1G]NV^/OBO.?'>NY#B)OUKBQXMG/&XUGW5_-J5P%;)S0!/X9^T7^
MIJSY(#U]':0I3385/9:\M\">'A\LA3WZ5ZW;Q^5"J>@H Y/Q^TJZ0QCZXKPN
MTU6Z@U4"0D#/K7TCK=@+^T,9&>*\%\6Z,=/O7=$QCVH ]4\*Z]$UF-[\XK;O
M-=@%L^'&<5\_Z5K]Q;1[<L,5:NO%<[#;N/- "^.=0>\N]J'(W5Z+\.M/V64,
MI')%>86<#ZI=*S*3\U>\^%+ 6VF1#&,"@#I>U%%% !1110 5QWQ(&?#$WT-=
MC7)_$",R>'95 [4 >8_"^%BS''\5>[0<0K]*\K^%NG;;9V*]Z]7484"@"&\_
MX\YO]PUX-X?#?\++F_W_ .M>]78S:2C_ &37C&B6;+\0)9-O&Z@#VQ?NCZ4M
M(OW1]*6@ J"\_P"/.7_=-3U%<C-M(/\ 9- 'SK%"[_$";C^.O?-%0I9*#Z5Y
M1I^F%_'$KE?XJ]CM8O*B"^U $DJ"2,J>]>.?$W1?F\R->1S7LU<UXHTE;^U<
ME<X% '@'AS5)[:^$;D@!O6O>=#UZ$Z>@9QG'K7ANJ::VGW\C*I&#Z4^T\3SV
MY$>XC% 'N.MZY"+!MK#./6O#O$>KS7-V8T8D$^M3WGB6:> IN)S6?I%H^HZC
M'N4G)H ],^$]M)$C,XZUZL1D8KF_"VDKI]JA"XR*Z6@#@_'NDK-IS,JY.*\,
MLY)].UQ5.0H-?3^K68O+8H1GBO#/%VA_8KQI53I[4 =IHFO+L3<W;UK9U#7(
M_+&&[>M>(6NM30<9(Q6@?$$LL1^8]* -;QGK32Q;8VJMX TM[O55DE7@FN>C
MDEU.[","1NKVOP5H*VMM'-MP: .UL[=;:$(H[59H'2B@#QCXN(6O8?J*WOAX
MN(8_I6?\3[9IKN(@9Y%;'@2(QQH".U 'H-%%% !7GGQ#_P!4?I7H=>=_$/\
MU1^E 'D-K8?:+J0J,FF6%Q/8ZN5.0H-=1X,LQ>:A,I&:K^)M'-G>/(JXY]*
M.XT775\A=S<_6M"\UV,0-ANWK7CEOK$UN=N2*EGU^9UV[C0!9\6ZG+<S;8SG
M)K=^&FE/)>^9*O4US&FVSZG=+N4G)KVWPGHBV,"2!<9% '5PQ"*,*.U2444
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
M[#K>E+--D(/RK,@T4+,IV=_2@#FM%\'F.19"G?/2O5]*MQ;6:IC&!2V=I''
MHVC@>E7  HP* %HHHH Y3Q/I'V^56VYP:M:%IWV-5&,8K>>-7ZBE5 O04 .H
MHHH *\Z^(G^I/TKT6O//B&,PGZ4 <E\,_FUB4>]=MX@T#[86.WK7%_#%,:U)
M_O5[2\*N.0* / -3\-&"8_+^E4[;P^TTRC;WKU_6=)664D(/RJCIVBA+A24[
M^E &7H/A;[.R.4_2O2[.(16ZKCH*2"V1(EPHZ58 P* %HHHH *Y+Q7HXU%?N
MYKK:8\:OU% 'A&K^%#;9;;^E9>F^'FN+O;MKVOQ!IJ3PX"C\JQM$T817NXI^
ME '-V/@TQ3JVS]*](T.R%I;A<8XK16UC&/E'Y5*JA1Q0 ZBBB@#"\36'V^Q\
MO&:=X;L/L-@(\8K9= XP10J!!@"@!U%%% !65KEF+NU*8SQ6K2,H88- 'CNL
M>%,(SA/TKC9]#;S,;>]?0>I6:26K#:/RKBIM#!F)V=_2@#C-#\+&9LE?TKTC
MP]HGV)3\N.*NZ#IJ0#E1^5=$L2KT H XVTT/RM?:YV]37:#H*8(E#;L#-24
M%9.L68NH67&<BM:D90W6@#QV^\&&6Y=PG4^E01^"2K@[/TKV,VL9/W1^5'V2
M+^Z/RH RO#-C]@T\1XQ6Y340(, 4Z@"*YC$D#+CJ*\QU_P *?:IG<)U]J]3Z
MU!+;(ZG*B@#YVU#PZT$A7;TK7TKPB;FTW;?TKO-6T42W#$)W]*Z#0M.2&S"E
M1^5 '(^'O"_V*124Z'TKT>!-D2CT%(L")T J6@ I#R*6B@#EO$&DB\1AMSFO
M/+_P:55WV?I7M+1JW453O;*-[9QM'3TH ^>VT%C<;-O>NPT;PB5"2%/TKH/[
M$'VS=L_B]*[6RLXX[9!M' ]* &Z5:BWL5CQT%<U<Z'O\0+<[>AKM  HP*:8E
M+;L#- "QC;&H]!3J** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** $8;ABJS6:,<XJ
MU10!#% L705-110 4444 %%%% #)$#C!JN;),YQ5NB@".*,1C J2BB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ I",C%+10!5>T1SDB
MGQ6ZQG@5/10 4444 %%%% !1110 4444 %1RQB1<&I** *GV-,8Q4\40B&!4
ME% !1110 5S'CB1H]!D9>N*Z>N>\80^=HLBXSQ0!Y%X5UIXKS;(W\5>QVFLQ
M/ GS=O6OG.Y>73M1X!'S5U>E^)VPBLYH ]L.I1@9S44NKQ(A.X=/6O.9/$8\
MD'?^M9&H>)B(CAZ ,SQUJC7>IO$C9!-=M\,--'V#>XYQ7E,1EU36@2"037O?
M@NS^R:>%QCB@#J5&% ]*6BB@ HHHH **** "F21B1<&GT4 5DM$1L@59HHH
M**** "BBB@!&7<N*K_9$W9Q5FB@!%&!BEHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH *KRVRR=15BB@"M':)&<@59HHH **** "BBB
M@""6W60Y(I@LT!SBK5% "*-HQ2T44 %%%% !1110 4444 %>?^/QF(_2O0*X
M#Q__ *H_2@#F/ALN-9D^M>S5XU\-S_Q.)/K7LM $$ELLAY%,2S1#D"K5% "
M8&*6BB@ HHHH **** (IH1*,$5'%:)&V0*LT4 %%%% !1110 4444 %%%% !
M1110 UU#K@U6-DA.<5;HH BBA6+H*EHHH **** "BBB@ HHHH **** "BBB@
M"M):(YR14L48B7 J2B@ HHHH **** "D9=RXI:* *GV)-V<5:5=JXI:* "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *HZI;_:;1DQUJ]2$
M CF@#POQ9X>\N5I-O0UYO>WQL)L9Q@U] >-(E$$AP.E?-/BUBMTV/[U &Q_P
MDI:,#?\ K42:L;J79NS7$Q2MZFM+1G)OER>] 'NW@SPY]H1+G;FO7]-MOL\(
M7&.*YKX>1*=!0XYP*[, #I0 M%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %>=?$1]L9^E>
MBUYM\2/]7^% '/\ PS;.L/\ 6O::\2^&'_(8?ZU[;0 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
0 !1110 4444 %%%% '__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703259512480">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jul. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jun. 30,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">0-21121<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">TRANSACT TECHNOLOGIES INC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001017303<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">06-1456680<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">One Hamden Center<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">2319 Whitney Avenue, Suite 3B<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Hamden<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">CT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">06518<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">203<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">859-6800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common stock, par value $0.01 per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TACT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9,958,118<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703258489248">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 10,756<span></span>
</td>
<td class="nump">$ 7,946<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">14,441<span></span>
</td>
<td class="nump">13,927<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NontradeReceivablesCurrent', window );">Employee retention credit receivable</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">15,408<span></span>
</td>
<td class="nump">12,028<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">707<span></span>
</td>
<td class="nump">724<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">41,312<span></span>
</td>
<td class="nump">36,125<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Fixed assets, net of accumulated depreciation of $18,193 and $17,656, respectively</a></td>
<td class="nump">2,838<span></span>
</td>
<td class="nump">2,781<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-use asset, net</a></td>
<td class="nump">2,053<span></span>
</td>
<td class="nump">2,488<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">2,621<span></span>
</td>
<td class="nump">2,621<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred tax assets</a></td>
<td class="nump">6,565<span></span>
</td>
<td class="nump">7,327<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net of accumulated amortization of $1,441 and $1,364, respectively</a></td>
<td class="nump">165<span></span>
</td>
<td class="nump">242<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">333<span></span>
</td>
<td class="nump">248<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsNoncurrent', window );">Total noncurrent assets</a></td>
<td class="nump">14,575<span></span>
</td>
<td class="nump">15,707<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">55,887<span></span>
</td>
<td class="nump">51,832<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Current portion of revolving loan payable</a></td>
<td class="nump">2,250<span></span>
</td>
<td class="nump">2,250<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">6,321<span></span>
</td>
<td class="nump">7,395<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">5,511<span></span>
</td>
<td class="nump">4,077<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Lease liability</a></td>
<td class="nump">904<span></span>
</td>
<td class="nump">875<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="nump">1,222<span></span>
</td>
<td class="nump">1,329<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">16,208<span></span>
</td>
<td class="nump">15,926<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Deferred revenue, net of current portion</a></td>
<td class="nump">152<span></span>
</td>
<td class="nump">143<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Lease liability, net of current portion</a></td>
<td class="nump">1,210<span></span>
</td>
<td class="nump">1,683<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">227<span></span>
</td>
<td class="nump">218<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesNoncurrent', window );">Total noncurrent liabilities</a></td>
<td class="nump">1,589<span></span>
</td>
<td class="nump">2,044<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">17,797<span></span>
</td>
<td class="nump">17,970<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (see Notes 5 and 7)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value, 20,000,000 shares authorized; 14,001,935 and 13,956,725 shares issued, respectively; 9,957,093 and 9,911,883 shares outstanding, respectively</a></td>
<td class="nump">140<span></span>
</td>
<td class="nump">139<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">56,594<span></span>
</td>
<td class="nump">56,282<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">13,534<span></span>
</td>
<td class="nump">9,630<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss, net of tax</a></td>
<td class="num">(68)<span></span>
</td>
<td class="num">(79)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValue', window );">Treasury stock, at cost (4,044,842 shares)</a></td>
<td class="num">(32,110)<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders' equity</a></td>
<td class="nump">38,090<span></span>
</td>
<td class="nump">33,862<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 55,887<span></span>
</td>
<td class="nump">$ 51,832<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482598/350-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482686/350-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 23: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LinesOfCreditCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NontradeReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of amounts currently receivable other than from customers. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NontradeReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481520/505-30-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481549/505-30-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703258343952">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Fixed assets, accumulated depreciation</a></td>
<td class="nump">$ 18,193<span></span>
</td>
<td class="nump">$ 17,656<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Intangible assets, accumulated amortization</a></td>
<td class="nump">$ 1,441<span></span>
</td>
<td class="nump">$ 1,364<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">20,000,000<span></span>
</td>
<td class="nump">20,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">14,001,935<span></span>
</td>
<td class="nump">13,956,725<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">9,957,093<span></span>
</td>
<td class="nump">9,911,883<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock (in shares)</a></td>
<td class="nump">4,044,842<span></span>
</td>
<td class="nump">4,044,842<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703253262016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>CONSOLIDATED STATEMENTS OF OPERATIONS [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 19,906<span></span>
</td>
<td class="nump">$ 12,623<span></span>
</td>
<td class="nump">$ 42,176<span></span>
</td>
<td class="nump">$ 22,325<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenue', window );">Cost of sales</a></td>
<td class="nump">9,048<span></span>
</td>
<td class="nump">7,189<span></span>
</td>
<td class="nump">19,063<span></span>
</td>
<td class="nump">14,325<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">10,858<span></span>
</td>
<td class="nump">5,434<span></span>
</td>
<td class="nump">23,113<span></span>
</td>
<td class="nump">8,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Engineering, design and product development</a></td>
<td class="nump">2,505<span></span>
</td>
<td class="nump">2,172<span></span>
</td>
<td class="nump">4,774<span></span>
</td>
<td class="nump">4,455<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Selling and marketing</a></td>
<td class="nump">2,684<span></span>
</td>
<td class="nump">3,293<span></span>
</td>
<td class="nump">5,441<span></span>
</td>
<td class="nump">5,976<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">4,445<span></span>
</td>
<td class="nump">2,923<span></span>
</td>
<td class="nump">7,861<span></span>
</td>
<td class="nump">6,127<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Operating expenses</a></td>
<td class="nump">9,634<span></span>
</td>
<td class="nump">8,388<span></span>
</td>
<td class="nump">18,076<span></span>
</td>
<td class="nump">16,558<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income (loss)</a></td>
<td class="nump">1,224<span></span>
</td>
<td class="num">(2,954)<span></span>
</td>
<td class="nump">5,037<span></span>
</td>
<td class="num">(8,558)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Interest and other income (expense):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNonoperatingNet', window );">Interest, net</a></td>
<td class="num">(68)<span></span>
</td>
<td class="num">(28)<span></span>
</td>
<td class="num">(134)<span></span>
</td>
<td class="num">(92)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(264)<span></span>
</td>
<td class="nump">21<span></span>
</td>
<td class="num">(299)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Interest and other (expense) income</a></td>
<td class="num">(68)<span></span>
</td>
<td class="num">(292)<span></span>
</td>
<td class="num">(113)<span></span>
</td>
<td class="num">(391)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="nump">1,156<span></span>
</td>
<td class="num">(3,246)<span></span>
</td>
<td class="nump">4,924<span></span>
</td>
<td class="num">(8,949)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (expense) benefit</a></td>
<td class="num">(391)<span></span>
</td>
<td class="nump">870<span></span>
</td>
<td class="num">(1,020)<span></span>
</td>
<td class="nump">2,225<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 765<span></span>
</td>
<td class="num">$ (2,376)<span></span>
</td>
<td class="nump">$ 3,904<span></span>
</td>
<td class="num">$ (6,724)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net income (loss) per common share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="nump">$ 0.08<span></span>
</td>
<td class="num">$ (0.24)<span></span>
</td>
<td class="nump">$ 0.39<span></span>
</td>
<td class="num">$ (0.68)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="nump">$ 0.08<span></span>
</td>
<td class="num">$ (0.24)<span></span>
</td>
<td class="nump">$ 0.39<span></span>
</td>
<td class="num">$ (0.68)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract', window );"><strong>Shares used in per-share calculation:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="nump">9,956<span></span>
</td>
<td class="nump">9,910<span></span>
</td>
<td class="nump">9,943<span></span>
</td>
<td class="nump">9,898<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (in shares)</a></td>
<td class="nump">10,017<span></span>
</td>
<td class="nump">9,910<span></span>
</td>
<td class="nump">10,016<span></span>
</td>
<td class="nump">9,898<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate cost of goods produced and sold and services rendered during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479557/942-235-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 940<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481913/940-20-25-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestIncomeExpenseNonoperatingNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of nonoperating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNonoperatingNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482916/730-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482517/912-730-25-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481283/985-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total amount of expenses directly related to the marketing or selling of products or services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703253334112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 765<span></span>
</td>
<td class="num">$ (2,376)<span></span>
</td>
<td class="nump">$ 3,904<span></span>
</td>
<td class="num">$ (6,724)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="nump">9<span></span>
</td>
<td class="num">(8)<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="num">(50)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss)</a></td>
<td class="nump">$ 774<span></span>
</td>
<td class="num">$ (2,384)<span></span>
</td>
<td class="nump">$ 3,915<span></span>
</td>
<td class="num">$ (6,774)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703253102176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 3,904<span></span>
</td>
<td class="num">$ (6,724)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation expense</a></td>
<td class="nump">398<span></span>
</td>
<td class="nump">581<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">722<span></span>
</td>
<td class="nump">625<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="nump">762<span></span>
</td>
<td class="num">(2,227)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossUnrealized', window );">Unrealized foreign currency transaction losses</a></td>
<td class="nump">21<span></span>
</td>
<td class="nump">298<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(434)<span></span>
</td>
<td class="num">(4,547)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherReceivables', window );">Employee retention credit receivable</a></td>
<td class="nump">1,500<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(3,363)<span></span>
</td>
<td class="num">(3,250)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other current and long-term assets</a></td>
<td class="num">(86)<span></span>
</td>
<td class="nump">26<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(1,063)<span></span>
</td>
<td class="nump">789<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities', window );">Accrued liabilities and other liabilities</a></td>
<td class="nump">1,329<span></span>
</td>
<td class="num">(159)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by (used in) operating activities</a></td>
<td class="nump">3,690<span></span>
</td>
<td class="num">(14,588)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="num">(689)<span></span>
</td>
<td class="num">(744)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(689)<span></span>
</td>
<td class="num">(744)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Withholding taxes paid on stock issuances</a></td>
<td class="num">(86)<span></span>
</td>
<td class="num">(119)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfLoanCosts', window );">Payment of bank financing costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(10)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(86)<span></span>
</td>
<td class="num">(129)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of exchange rate changes on cash and cash equivalents</a></td>
<td class="num">(105)<span></span>
</td>
<td class="num">(103)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">2,810<span></span>
</td>
<td class="num">(15,564)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents, beginning of period</a></td>
<td class="nump">7,946<span></span>
</td>
<td class="nump">19,457<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents, end of period</a></td>
<td class="nump">10,756<span></span>
</td>
<td class="nump">3,893<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Supplemental schedule of non-cash investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid', window );">Non-cash capital expenditure items</a></td>
<td class="nump">$ 41<span></span>
</td>
<td class="nump">$ 7<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Future cash outflow to pay for purchases of fixed assets that have occurred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalExpendituresIncurredButNotYetPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossUnrealized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of unrealized gain (loss) from foreign currency transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-6<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481956/830-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481926/830-20-50-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossUnrealized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in accrued expenses, and obligations classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in receivables classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfLoanCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for loan origination associated cost which is usually collected through escrow.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfLoanCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703251410144">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Additional Paid-in Capital [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>Treasury Stock [Member]</div></th>
<th class="th"><div>Accumulated Other Comprehensive (Loss) Income [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2021</a></td>
<td class="nump">$ 139<span></span>
</td>
<td class="nump">$ 55,246<span></span>
</td>
<td class="nump">$ 15,566<span></span>
</td>
<td class="num">$ (32,110)<span></span>
</td>
<td class="nump">$ 143<span></span>
</td>
<td class="nump">$ 38,984<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of common stock from restricted stock units</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">581<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited', window );">Relinquishment of stock awards to pay for withholding taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(119)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,724)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(6,724)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(50)<span></span>
</td>
<td class="num">(50)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Jun. 30, 2022</a></td>
<td class="nump">139<span></span>
</td>
<td class="nump">55,708<span></span>
</td>
<td class="nump">8,842<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
<td class="nump">93<span></span>
</td>
<td class="nump">$ 32,672<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockTransactionsParentheticalDisclosuresAbstract', window );"><strong>Supplemental Share Information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of shares from stock awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">63<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Relinquishment of stock awards to pay withholding taxes (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Mar. 31, 2022</a></td>
<td class="nump">139<span></span>
</td>
<td class="nump">55,423<span></span>
</td>
<td class="nump">11,218<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
<td class="nump">101<span></span>
</td>
<td class="nump">$ 34,771<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of common stock from restricted stock units</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">285<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited', window );">Relinquishment of stock awards to pay for withholding taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,376)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,376)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(8)<span></span>
</td>
<td class="num">(8)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Jun. 30, 2022</a></td>
<td class="nump">139<span></span>
</td>
<td class="nump">55,708<span></span>
</td>
<td class="nump">8,842<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
<td class="nump">93<span></span>
</td>
<td class="nump">$ 32,672<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockTransactionsParentheticalDisclosuresAbstract', window );"><strong>Supplemental Share Information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of shares from stock awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Relinquishment of stock awards to pay withholding taxes (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Dec. 31, 2022</a></td>
<td class="nump">139<span></span>
</td>
<td class="nump">56,282<span></span>
</td>
<td class="nump">9,630<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
<td class="num">(79)<span></span>
</td>
<td class="nump">$ 33,862<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of common stock from restricted stock units</a></td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">398<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited', window );">Relinquishment of stock awards to pay for withholding taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(86)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,904<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,904<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="nump">11<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Jun. 30, 2023</a></td>
<td class="nump">140<span></span>
</td>
<td class="nump">56,594<span></span>
</td>
<td class="nump">13,534<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
<td class="num">(68)<span></span>
</td>
<td class="nump">$ 38,090<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockTransactionsParentheticalDisclosuresAbstract', window );"><strong>Supplemental Share Information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of shares from stock awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">57<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Relinquishment of stock awards to pay withholding taxes (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Mar. 31, 2023</a></td>
<td class="nump">140<span></span>
</td>
<td class="nump">56,474<span></span>
</td>
<td class="nump">12,769<span></span>
</td>
<td class="num">(32,110)<span></span>
</td>
<td class="num">(77)<span></span>
</td>
<td class="nump">$ 37,196<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of common stock from restricted stock units</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">120<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited', window );">Relinquishment of stock awards to pay for withholding taxes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">765<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">765<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9<span></span>
</td>
<td class="nump">9<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Jun. 30, 2023</a></td>
<td class="nump">$ 140<span></span>
</td>
<td class="nump">$ 56,594<span></span>
</td>
<td class="nump">$ 13,534<span></span>
</td>
<td class="num">$ (32,110)<span></span>
</td>
<td class="num">$ (68)<span></span>
</td>
<td class="nump">$ 38,090<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockTransactionsParentheticalDisclosuresAbstract', window );"><strong>Supplemental Share Information:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of shares from stock awards (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Relinquishment of stock awards to pay withholding taxes (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of forfeited shares granted under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph c(2)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480767/946-205-45-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockTransactionsParentheticalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockTransactionsParentheticalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703255192336">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of presentation<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Basis of Presentation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock', window );">Basis of Presentation</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1. Basis of presentation</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">The </span>accompanying unaudited financial statements of TransAct Technologies Incorporated (&#8220;TransAct&#8221;,
      the &#8220;Company&#8221;, &#8220;we&#8221;, &#8220;us&#8221;, or &#8220;our&#8221;) have been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;) for interim financial information.&#160; Accordingly, they do not include all of the
      information and footnotes required by U.S. GAAP to be included in full year financial statements.&#160; In the opinion of management, all adjustments considered necessary for a fair statement of the results for the periods presented have been included and
      are of a normal recurring nature<span style="font-size: 10pt; font-family: 'Times New Roman';">.&#160; The </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';"> Condensed Consolidated Balance Sheet data was derived from audited financial statements, but does not include all disclosures required by U.S. GAAP.&#160; These interim financial statements
        should be read in conjunction with the audited financial statements in our Annual Report on Form 10-K for the year ended </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';"> (the &#8220;2022 Form 10-K&#8221;).</span></div>

<div style="text-align: justify;"><br/>
      <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> The results of operations for the three and six months ended&#160;June 30, 2023
        are not necessarily indicative of the results to be expected for the full year ending December 31, 2023. </span> </div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Impact of the COVID-19 Pandemic and Global Supply Chain Disruptions</div>

<div style="text-align: justify; margin-right: 0.1pt; margin-left: 0.1pt; font-family: 'Times New Roman'; font-size: 10pt;">Since early 2020 and into the first quarter of 2022, the COVID-19 pandemic caused uncertainty and disruption in the global
      economy and financial markets.&#160; Similar to other companies, TransAct has also been impacted by global supply chain issues, increased shipping costs and inflationary pressures, which have increased our costs and, in some instances, slowed our ability
      to deliver products to our customers.&#160; During 2021, we experienced significantly lower sales levels.&#160; However, during 2022, we were able to increase our inventory levels and minimize the impact to our customers by successfully modifying our products
      that were affected by supply chain disruptions, as well as sourcing component parts from alternate suppliers.&#160; At the same time, after a slowdown resulting from the Omicron and other variants of COVID-19 that began to ease in the first six months of
      2022, we continued to experience demand recovery during the remainder of 2022 and into 2023. Although we were able to increase inventory levels during 2022 and expect to continue to do so in the balance of 2023, there can be no assurance that new or
      continuing supply chain disruptions will not affect our products or that we will be able to make timely modifications to address any future supply chain issues that arise.&#160; Further, while we have offset most of our cost increases by increasing prices
      of our products, there can be no guarantee that we will not be impacted by the economic effects of any future cost increases that cannot be predicted, supply chain disruptions, inflationary pressures and potential new COVID-19 variants in the markets
      we serve and from which we source our supplies and parts.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Balance Sheet, Cash Flow and Liquidity. </span><span style="font-size: 10pt; font-family: 'Times New Roman';">We have taken the following actions to increase liquidity and strengthen our financial position in an effort to mitigate the negative impacts from the COVID</span>-19<span style="font-size: 10pt; font-family: 'Times New Roman';"> pandemic, supply chain disruptions and inflationary pressures:</span></div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;"></td>

    <td style="width: 18pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#9679;</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">Employee Retention Credit &#8211; Under the provisions of the CARES Act, the Company received a refundable employee retention credit subject to certain criteria.&#160; In connection with the
              CARES Act, the Company recognized the employee retention credit during the fourth quarter of 2021 and recorded $1.5 million as
              &#8220;Gain from employee retention credit&#8221; in the Consolidated Statement of Operations for the year ended December 31, 2021 and the related receivable as &#8220;Employee retention credit receivable&#8221; in the Consolidated Balance Sheet as of December 31,
              2021 and 2022.&#160; We received these funds in the first quarter of 2023.</div>
          </td>

  </tr>


</table>

<table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <tr>

    <td style="width: 18pt;"></td>

    <td style="width: 18pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#9679;</td>

    <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">Credit Facility &#8211; On March 13, 2020, we entered into a credit facility with Siena Lending Group LLC that provides a revolving credit line of up to <span style="font-size: 10pt; font-family: 'Times New Roman';">$</span>10.0<span style="font-size: 10pt; font-family: 'Times New Roman';"> million</span>,
              subject to a borrowing base, and on July 19, 2022, we entered into an amendment to extend the maturity of the facility to March 13, 2025.&#160; See Note 5 for further details regarding this facility.</div>
          </td>

  </tr>


</table>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">After reviewing whether conditions and/or events raise substantial doubt about our ability to meet future financial obligations over the 12 months following the date on
      which the Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q were issued, including consideration of the actions to manage expenses and liquidity, we believe that our net cash to be provided by operations
      combined with our cash and cash equivalents and borrowing availability under our revolving credit facility will provide sufficient liquidity to fund our current obligations, capital spending, and working capital requirements and to comply with the
      financial covenants of our credit facility over at least 12 months following the date that the Condensed Consolidated Financial Statements were issued.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Use of Assumptions and Estimates</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Management&#8217;s belief that the Company will be able to fund its planned operations over the 12 months following the date on which the Condensed Consolidated Financial
      Statements were issued is based on assumptions which involve significant judgment and estimates of future revenues, inflation, rising interest rates, capital expenditures and other operating costs. Our current assumptions are that casinos and
      restaurants will remain open and consumer traffic will continue to remain strong during the remainder of 2023. Though demand for our products at casinos has increased substantially in 2022 and during the first six months of 2023, we cannot predict
      the ultimate impact of the current economic environment, including inflation, rising interest rates and supply chain disruptions on our customers, which may impact sales. We believe that we are positioned to withstand the impact of any potential
      economic downturn or slower than anticipated economic recovery. However, should conditions warrant, we believe we will be able to take additional financial and operational actions to cut costs and/or increase liquidity.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In addition, the presentation of the accompanying unaudited financial statements requires us to make estimates and judgments that affect the reported amounts of assets,
      liabilities, revenue and expenses, and the disclosure of contingent assets and liabilities.&#160; Our estimates include those related to revenue recognition, accounts receivable, inventory obsolescence, goodwill and intangible assets, the valuation of
      deferred tax assets and liabilities, depreciable lives of equipment, share-based compensation and contingent liabilities.&#160; We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the
      circumstances.&#160; Actual results could differ from those estimates used.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Certain reclassifications have been made to prior year financial statements to conform to classifications used in the current year.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 275<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//275/tableOfContent<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//205/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703257522512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant accounting policies<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant accounting policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">Significant accounting policies</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2. Significant accounting policies</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For a discussion of our significant accounting policies, see Note 2, <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Summary of
        significant accounting policies</span> within Part II, Item 8. &#8220;Financial Statements and Supplementary Data&#8221; in the 2022 Form 10-K for the year ended December 31, 2022.&#160; There have been no changes to our significant accounting policies since our
      2022 Form 10-K for the year ended December 31, 2022.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Recently Adopted Accounting Pronouncement</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In June 2016, the FASB issued ASU 2016-13, <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Financial Instruments - Credit Losses
          (Topic 326): Measurement of Credit Losses on Financial Instruments</span>. This ASU and its related amendments (collectively, the &#8220;Credit Loss Standard&#8221;) modifies the impairment model to utilize an expected loss methodology in place of the
        incurred loss methodology for financial instruments, including trade receivables, contract assets and off-balance sheet credit exposures. The Credit Loss Standard requires consideration of a broader range of information to estimate expected credit
        losses, including historical information, current economic conditions and a reasonable forecast period. This Credit Loss Standard requires that the statement of operations reflect estimates of expected credit losses for newly recognized financial
        assets as well as changes in the estimate of expected credit losses that have taken place during the period, which may result in earlier recognition of certain losses.</div>

<div><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We adopted this standard effective January 1, 2023, and this standard did not have a material impact on the Company&#8217;s Condensed Consolidated Financial Statements.</div>

<div><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are exposed to credit losses primarily through our sales of products and software to commercial customers which are recorded as Accounts receivable, net on the
        Condensed Consolidated Balance Sheets. Our method for developing our allowance for credit losses involves making informed judgments regarding whether an adjustment is necessary to our historical loss experiences to reflect our expectations around
        current economic conditions and reasonable and supportable forecast periods, where applicable. We utilize current economic market data as well as other internal and external information available to us to inform our decision making in this process.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703256664544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3. Revenue</div>

<div><br/>
    </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">We account for revenue in accordance with ASC Topic 606: Revenue from Contracts with Customers.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Disaggregation of revenue</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following tables disaggregate our revenue by market type, as we believe this best depicts how the nature, amount, timing and uncertainty of our revenue and cash
      flows are affected by economic factors.&#160; Sales and usage-based taxes are excluded from revenues.</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Food service technology</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3,625</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">270</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3,895</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,281</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">151</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,432</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">POS automation</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,904</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#8211;</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,904</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,172</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#8211;</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,172</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Casino and gaming</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">9,475</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2,697</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">12,172</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,929</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,596</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,525</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Transact Services Group</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,721</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">214</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,935</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,345</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">149</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,494</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Total net sales</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">16,725</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3,181</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,906</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">9,727</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,896</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">12,623</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Food service technology</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">6,888</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">465</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">7,353</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">5,227</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">335</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">5,562</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">POS automation</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">3,686</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">15</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">3,701</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,472</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#8211;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,472</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Casino and gaming</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">21,044</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">6,939</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">27,983</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">6,717</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">4,570</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">11,287</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">TransAct Services Group</div>
              </div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">2,704</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">435</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">3,139</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">2,413</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">591</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">3,004</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Total net sales</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">34,322</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">7,854</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">42,176</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">16,829</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">5,496</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">22,325</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Contract balances</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Contract assets consist of unbilled receivables.&#160; Pursuant to the over-time revenue recognition model, revenue may be recognized prior to the customer being invoiced.&#160;
      An unbilled receivable is recorded to reflect revenue that is recognized when such revenue exceeds the amount invoiced to the customer. Unbilled receivables are separated into current and non-current assets and included within &#8220;Accounts receivable,
      net&#8221; and &#8220;Other assets&#8221; in the Condensed Consolidated Balance Sheets.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Contract liabilities consist of customer pre-payments and deferred revenue.&#160; Customer prepayments are reported as &#8220;Accrued liabilities&#8221; in current liabilities in the
      Condensed Consolidated Balance Sheets and represent customer payments made in advance of performance obligations in instances where credit has not been extended and are recognized as revenue when the performance obligation is complete.&#160; Deferred
      revenue is reported separately in current liabilities and non-current liabilities and consists of our extended warranty contracts, technical support for our food service technology terminals, EPICENTRAL maintenance contracts and prepaid software
      subscriptions for our BOHA! software applications, and is recognized as revenue as (or when) we perform under the contract.&#160; <span style="font-size: 10pt; font-family: 'Times New Roman';">For the </span>six<span style="font-size: 10pt; font-family: 'Times New Roman';"> months ended </span>June 30, 2023<span style="font-size: 10pt; font-family: 'Times New Roman';">, we recognized revenue of $</span>1<span style="font-size: 10pt; font-family: 'Times New Roman';"> million related to our contract liabilities at </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';">.&#160; <span style="font-family: 'Times New Roman'; font-size: 10pt; color: #000000;">Total net contract liabilities consisted of the following:</span></span></div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Unbilled receivables, current</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">261</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">392</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Unbilled receivables, net of current portion</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">153</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">163</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer pre-payments</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(24</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(101</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, current</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(1,222</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(1,329</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, net of current portion</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(152</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(143</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total net contract liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(984</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(1,018</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>

<div>
    &#160;
    </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Remaining performance obligations</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Remaining performance obligations represent the transaction price of firm orders for which a good or service has not been delivered to our customer.&#160; As of June 30, 2023, the aggregate amount of transaction prices allocated to remaining performance obligations was $15.7 million.&#160; The Company expects to recognize revenue of $15.4
      million of its remaining performance obligations within the next 12 months following June 30, 2023, $0.2 million within the next <span style="-sec-ix-hidden:Fact_46d6edcfceac48c18fff396979fa22a4">24 months</span> following June 30, 2023 and
      the <span style="-sec-ix-hidden:Fact_e8b96d7595e54f3eac451aa3fb8bf1c0">balance</span> of these remaining performance obligations recognized within the next <span style="-sec-ix-hidden:Fact_88bacb023a1046b0968f765a62b445b3">36 months</span> following June 30, 2023.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703255420400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventories [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">4. Inventories</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The components of inventories were:</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials and purchased component parts</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">10,338</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">8,884</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finished goods</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">5,070</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,144</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">15,408</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">12,028</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703255338592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">5. Debt</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;">Credit Facility</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On March 13, 2020, we entered into a credit facility (the &#8220;Siena Credit Facility&#8221;) with Siena Lending Group LLC (the &#8220;Lender&#8221;).&#160; The Siena Credit Facility provides for a
      revolving credit line of up to $10.0 million and was originally scheduled to expire on March 13, 2023. Borrowings under the Siena Credit
      Facility bear a floating rate of interest equal to the greatest of (i) the prime rate plus 1.75%, (ii) the federal funds rate plus 2.25%, and (iii) 6.50%. The total deferred
      financing costs related to expenses incurred to complete the Siena Credit Facility was $245 thousand, which were reported as &#8220;Other current
      assets&#8221; in current assets and &#8220;Other assets&#8221; in non-current assets in the Condensed Consolidated Balance Sheets. We also pay a fee of 0.50%
      on unused borrowings under the Siena Credit Facility. Borrowings under the Siena Credit Facility are secured by a lien on substantially all the assets of the Company.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Siena Credit Facility imposes a financial covenant on the Company and borrowings are subject to a borrowing base based on (i) 85% of eligible accounts receivable plus the lesser of (a) $5.0
      million and (b) 50% of eligible raw material and 60% of finished goods inventory. The agreement governing the Siena Credit Facility restricts, among other things, our ability to incur additional indebtedness and create other liens. On July
      21, 2021, the Company entered into an amendment (&#8220;Siena Credit Facility Amendment No. 1&#8221;) to the Loan and Security Agreement governing the Siena Credit Facility. Siena Credit Facility Amendment No. 1 changed the financial covenant under the Siena
      Credit Facility from a minimum EBITDA covenant to an excess availability covenant requiring that the Company maintain excess availability of at least $750
      thousand under the Siena Credit Facility, tested as of the end of each calendar month, beginning with the calendar month ended July 31, 2021. From July 31, 2021 through June 30, 2023, we remained in compliance with our excess availability covenant. As of June 30, 2023, we had $2.3 million of outstanding borrowings under the Siena Credit Facility and $5.6 million of net borrowing capacity available under the Siena Credit Facility.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On July 19, 2022, the Company and the Lender entered into Amendment No. 2 (&#8220;Siena Credit Facility Amendment No. 2&#8221;) to the Loan and Security Agreement governing the
      Siena Credit Facility, as amended by Siena Credit Facility Amendment No. 1.&#160; Also on July 19, 2022, the Company and the Lender entered into an Amended and Restated Fee Letter (the &#8220;Amended Fee Letter&#8221;) in connection with the Siena Credit Facility
      Amendment No. 2. Siena Credit Facility Amendment No. 2 did not modify the aggregate amount of the revolving commitment or the interest rate applicable to the loans<span style="font-size: 10pt; font-family: 'Times New Roman';">.</span></div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The changes to the Siena Credit Facility provided for in Siena Credit Facility Amendment No. 2 include, among other things, the following:</div>

<div><br/>
    </div>

<div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">(i) The extension of the maturity date from March 13, 2023 to March 13, 2025; and</div>

<div><br/>
    </div>

<div style="text-align: justify; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;">(ii) The termination of the existing blocked account control agreement and entry into a new &#8220;springing&#8221; deposit account control agreement, permitting
      the Company to direct the use of funds in its deposit account until such time as (a) the sum of excess availability under the Siena Credit Facility (as amended) and unrestricted cash is less than $5 million for 3 consecutive business days or (b) an event of
      default occurs and is continuing.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In addition, the Amended Fee Letter requires the Company, while it retains the ability to direct the use of funds in the deposit account, to maintain outstanding
      borrowings of at least $2,250,000 in principal amount. If the Company does not have the ability to direct the use of funds in the deposit
      account, then the Amended Fee Letter requires the Company to pay interest on at least $2,250,000 principal amount of loans, whether or not
      such amount of loans is actually outstanding.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On May 1, 2023, the Company and the Lender agreed to a letter amendment to the Loan and Security Agreement governing the Siena Credit Facility.&#160; Section 7.1(m) of the
        Loan and Security Agreement governing the Siena Credit Facility required that any successor to Mr. Shuldman be reasonably acceptable to the Lender, and this amendment confirmed that Mr. Dillon is an acceptable successor to Mr. Shuldman and applied
        the same requirement to any future successor to Mr. Dillon.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//470/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1C<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703254552368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per share<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings per share</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">6. Earnings per share</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following table sets forth the reconciliation of basic and diluted weighted average shares outstanding:</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands, except per share data)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">765</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(2,376</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">3,904</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">(6,724</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Shares:</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Basic:&#160; Weighted average common shares outstanding</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">9,956</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">9,910</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">9,943</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">9,898</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Add:&#160; Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">61</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#8211;</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">73</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#8211;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; padding-bottom: 4px;" valign="bottom">
            <div>
              <div style="text-align: left; text-indent: -27pt; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted:&#160; Weighted average common and common equivalent shares outstanding</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">10,017</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">9,910</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom">10,016</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">9,898</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss) per common share:</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">0.08</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(0.24</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">0.39</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">(0.68</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">0.08</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(0.24</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">0.39</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">(0.68</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">)</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">The computation of diluted earnings per share excludes the effect of the potential exercise of stock
        awards, including stock options and restricted stock units, when the average market price of the common stock is lower than the exercise price of the related stock award during the period, as the inclusion of these stock awards in the computation
        of diluted earnings would be anti-dilutive.</span> For the three and six months ended June 30, 2022, there were 1.5 million and 1.2 million, respectively,
      of potentially dilutive shares consisting of stock awards that were excluded from the calculation of earnings per diluted share.&#160; Furthermore, in&#160; periods when a net loss is reported, such as the three and six months ended June 30, 2022, basic and
      diluted net loss per common share are calculated using the same method.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703260403008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">7. Leases</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We account for leases in accordance with ASC Topic 842: Leases.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We enter into lease agreements for the use of real estate space and certain equipment under operating leases and we have no financing leases. Our leases are included in
      &#8220;Right-of-use-assets&#8221; and &#8220;Lease liabilities&#8221; in our Condensed Consolidated Balance Sheets.&#160; Our leases have various lease terms, some of which include options to extend. Lease expense is recognized on a straight-line basis over the lease term.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Operating lease expense for the six months ended June 30, 2023
      and 2022 was $483
      thousand and $487 thousand, respectively, and is reported as &#8220;Cost of sales&#8221;, &#8220;Engineering, design and product development expense&#8221;,
      &#8220;Selling and marketing expense&#8221;, and &#8220;General and administrative expense&#8221; in the Condensed Consolidated Statements of Operations. Operating lease expenses include short-term lease costs, which were immaterial during the periods presented.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following information represents supplemental disclosure for the statement of cash flows related to operating leases (in thousands):</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: bottom;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash outflows from leases</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">504</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">456</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following summarizes additional information related to our leases as of June 30, 2023 and December 31, 2022:</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Weighted average remaining lease term (in years)</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2.3</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.7</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div>
              <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Weighted average discount rate</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">4.4</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">%</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">4.5</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </div>
          </td>

  </tr>


</table>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The maturity of the Company&#8217;s operating lease liabilities as of June 30, 2023 and December 31, 2022 were as follows (in thousands):</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">2023</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br/>
              </div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">469</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">972</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2024</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,024</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2025</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">712</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">710</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2026</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">22</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">20</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;">Total undiscounted lease payments</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2,227</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,724</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Less imputed interest</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">113</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">166</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;">Total lease liabilities</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2,114</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,558</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703255645760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income taxes [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income taxes</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">8. Income taxes</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recorde<span style="font-size: 10pt;">d income tax expense in the second
        quarter of 2023 of $391
        thousand at an effective tax rate of 33.8% compared to an income tax benefit in the second quarter of 2022 of $870 thousand at an effective tax rate of (26.8%).&#160;














        For the six months ended June 30, 2023,
        we recorded income tax expense of $1.0 million at an effective tax rate of <span style="font-family: 'Times New Roman';">20.7%</span>, compared to an income tax benefit for the six months ended June 30, 2022 of $2.2 million at an effective tax rate of <span style="font-family: 'Times New Roman';">(24.9%)</span>.</span></div>

<div><span style="font-size: 10pt;"> </span></div>

<div><span style="font-size: 10pt;"><br/>
      </span> </div>

<div><span style="font-size: 10pt;"> </span></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are subject to U.S. federal income tax, as well as income tax in certain U.S. state and foreign jurisdictions.&#160; We have substantially concluded all U.S. federal,
      state and local income tax, and foreign tax regulatory examination matters through 2018.&#160; However, our federal tax returns for the years 2019 through 2022 remain open to examination. Various U.S. state and foreign tax jurisdiction tax years remain
      open to examination as well, but we believe that any additional assessment would be immaterial to the Condensed Consolidated Financial Statements. The Company&#160;maintains a valuation allowance against certain deferred tax assets where realization is
      not certain.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//740/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482526/740-270-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703255182576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent events<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent events</a></td>
<td class="text">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">9. Subsequent events</div>

<div><br/>
    </div>

<div style="text-align: justify; margin-top: 3pt; margin-bottom: 3pt; font-family: 'Times New Roman'; font-size: 10pt;">The Company has evaluated all events or transactions that occurred up to the date the Condensed Consolidated Financial Statements
        were available to be issued.&#160; Based upon this review, the Company did not identify any subsequent events that would have required adjustment or disclosure in the Condensed Consolidated Financial Statements.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//855/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703259510800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of presentation (Policies)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Basis of Presentation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Accounting</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">The </span>accompanying unaudited financial statements of TransAct Technologies Incorporated (&#8220;TransAct&#8221;,
      the &#8220;Company&#8221;, &#8220;we&#8221;, &#8220;us&#8221;, or &#8220;our&#8221;) have been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;U.S. GAAP&#8221;) for interim financial information.&#160; Accordingly, they do not include all of the
      information and footnotes required by U.S. GAAP to be included in full year financial statements.&#160; In the opinion of management, all adjustments considered necessary for a fair statement of the results for the periods presented have been included and
      are of a normal recurring nature<span style="font-size: 10pt; font-family: 'Times New Roman';">.&#160; The </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';"> Condensed Consolidated Balance Sheet data was derived from audited financial statements, but does not include all disclosures required by U.S. GAAP.&#160; These interim financial statements
        should be read in conjunction with the audited financial statements in our Annual Report on Form 10-K for the year ended </span>December 31, 2022<span style="font-size: 10pt; font-family: 'Times New Roman';"> (the &#8220;2022 Form 10-K&#8221;).</span></div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Assumptions and Estimates</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Use of Assumptions and Estimates</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Management&#8217;s belief that the Company will be able to fund its planned operations over the 12 months following the date on which the Condensed Consolidated Financial
      Statements were issued is based on assumptions which involve significant judgment and estimates of future revenues, inflation, rising interest rates, capital expenditures and other operating costs. Our current assumptions are that casinos and
      restaurants will remain open and consumer traffic will continue to remain strong during the remainder of 2023. Though demand for our products at casinos has increased substantially in 2022 and during the first six months of 2023, we cannot predict
      the ultimate impact of the current economic environment, including inflation, rising interest rates and supply chain disruptions on our customers, which may impact sales. We believe that we are positioned to withstand the impact of any potential
      economic downturn or slower than anticipated economic recovery. However, should conditions warrant, we believe we will be able to take additional financial and operational actions to cut costs and/or increase liquidity.</div>

<div><br/>
    </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In addition, the presentation of the accompanying unaudited financial statements requires us to make estimates and judgments that affect the reported amounts of assets,
      liabilities, revenue and expenses, and the disclosure of contingent assets and liabilities.&#160; Our estimates include those related to revenue recognition, accounts receivable, inventory obsolescence, goodwill and intangible assets, the valuation of
      deferred tax assets and liabilities, depreciable lives of equipment, share-based compensation and contingent liabilities.&#160; We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the
      circumstances.&#160; Actual results could differ from those estimates used.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription', window );">Reclassifications</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Certain reclassifications have been made to prior year financial statements to conform to classifications used in the current year.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PriorPeriodReclassificationAdjustmentDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 205<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483504/205-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PriorPeriodReclassificationAdjustmentDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703253954000">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant accounting policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditLossFinancialInstrumentPolicyTextBlock', window );">Credit Losses</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In June 2016, the FASB issued ASU 2016-13, <span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">Financial Instruments - Credit Losses
          (Topic 326): Measurement of Credit Losses on Financial Instruments</span>. This ASU and its related amendments (collectively, the &#8220;Credit Loss Standard&#8221;) modifies the impairment model to utilize an expected loss methodology in place of the
        incurred loss methodology for financial instruments, including trade receivables, contract assets and off-balance sheet credit exposures. The Credit Loss Standard requires consideration of a broader range of information to estimate expected credit
        losses, including historical information, current economic conditions and a reasonable forecast period. This Credit Loss Standard requires that the statement of operations reflect estimates of expected credit losses for newly recognized financial
        assets as well as changes in the estimate of expected credit losses that have taken place during the period, which may result in earlier recognition of certain losses.</div>

<div><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We adopted this standard effective January 1, 2023, and this standard did not have a material impact on the Company&#8217;s Condensed Consolidated Financial Statements.</div>

<div><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are exposed to credit losses primarily through our sales of products and software to commercial customers which are recorded as Accounts receivable, net on the
        Condensed Consolidated Balance Sheets. Our method for developing our allowance for credit losses involves making informed judgments regarding whether an adjustment is necessary to our historical loss experiences to reflect our expectations around
        current economic conditions and reasonable and supportable forecast periods, where applicable. We utilize current economic market data as well as other internal and external information available to us to inform our decision making in this process.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditLossFinancialInstrumentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-14<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479391/326-20-30-5A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-3C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479366/326-20-35-8A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-3D<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-5<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479175/326-30-30-1B<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-3C<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-3A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-3D<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 13A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479148/326-30-35-13A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 4A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479391/326-20-30-4A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479148/326-30-35-7A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-21<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-7<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-17<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.M.Q4)<br> -SubTopic 20<br> -Topic 326<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483530/326-20-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossFinancialInstrumentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703255283472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following tables disaggregate our revenue by market type, as we believe this best depicts how the nature, amount, timing and uncertainty of our revenue and cash
      flows are affected by economic factors.&#160; Sales and usage-based taxes are excluded from revenues.</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Food service technology</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3,625</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">270</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3,895</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,281</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">151</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,432</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">POS automation</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,904</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">&#8211;</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,904</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,172</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#8211;</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,172</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Casino and gaming</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">9,475</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2,697</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">12,172</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,929</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,596</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">6,525</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Transact Services Group</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,721</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">214</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,935</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,345</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">149</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,494</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Total net sales</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">16,725</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">3,181</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,906</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">9,727</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,896</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">12,623</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="22" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">United States</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">International</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Total</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Food service technology</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">6,888</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">465</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">7,353</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">5,227</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">335</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">5,562</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">POS automation</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">3,686</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">15</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">3,701</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,472</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#8211;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">2,472</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Casino and gaming</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">21,044</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">6,939</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">27,983</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">6,717</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">4,570</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">11,287</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
                <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">TransAct Services Group</div>
              </div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">2,704</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">435</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom">3,139</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">2,413</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">591</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">3,004</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">
            <div>
              <div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;">Total net sales</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">34,322</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">7,854</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">42,176</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">16,829</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">5,496</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom">22,325</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div><br/>
    </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Net Contract Liabilities</a></td>
<td class="text"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: #000000;">Total net contract liabilities consisted of the following:</span>
<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Unbilled receivables, current</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">261</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">392</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Unbilled receivables, net of current portion</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">153</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">163</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Customer pre-payments</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(24</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(101</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, current</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(1,222</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(1,329</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Deferred revenue, net of current portion</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(152</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(143</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
            <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Total net contract liabilities</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">(984</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">)</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">(1,018</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
          </td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703256770896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventories [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Inventories</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The components of inventories were:</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Raw materials and purchased component parts</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">10,338</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">8,884</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Finished goods</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">5,070</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">3,144</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">15,408</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">12,028</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703256770896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per share (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Earnings per Share</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following table sets forth the reconciliation of basic and diluted weighted average shares outstanding:</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="14" style="vertical-align: bottom;" valign="bottom">
            <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(In thousands, except per share data)</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">765</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(2,376</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">3,904</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">(6,724</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Shares:</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Basic:&#160; Weighted average common shares outstanding</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">9,956</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">9,910</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">9,943</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">9,898</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Add:&#160; Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">61</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#8211;</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">73</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">&#8211;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; padding-bottom: 4px;" valign="bottom">
            <div>
              <div style="text-align: left; text-indent: -27pt; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted:&#160; Weighted average common and common equivalent shares outstanding</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">10,017</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">9,910</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom">10,016</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom">9,898</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Net income (loss) per common share:</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Basic</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">0.08</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(0.24</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom">0.39</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">(0.68</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">)</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 52%;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;">Diluted</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">0.08</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">(0.24</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">)</div>
            </div>
          </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom">0.39</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">$</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">(0.68</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">)</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703253091488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
</tr>
<tr><th class="th"><div>Jun. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock', window );">Cash Flows for Operating Leases</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following information represents supplemental disclosure for the statement of cash flows related to operating leases (in thousands):</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td rowspan="1" style="vertical-align: bottom;" valign="bottom"></td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Six Months Ended</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30,</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2023</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Operating cash outflows from leases</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">504</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">456</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock', window );">Additional Information Related to Leases</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following summarizes additional information related to our leases as of June 30, 2023 and December 31, 2022:</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Weighted average remaining lease term (in years)</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2.3</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2.7</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div>
              <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Weighted average discount rate</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">4.4</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">%</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">4.5</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">%</div>
            </div>
          </td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Maturity of Operating Lease Liabilities</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The maturity of the Company&#8217;s operating lease liabilities as of June 30, 2023 and December 31, 2022 were as follows (in thousands):</div>

<div><br/>
    </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">June 30, 2023</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
            <div>
              <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">December 31, 2022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">2023</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><br/>
              </div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">469</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
              </div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">972</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2024</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">1,024</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">1,022</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2025</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">712</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">710</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">2026</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">22</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">20</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;">Total undiscounted lease payments</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2,227</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,724</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom">
            <div>
              <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">Less imputed interest</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">113</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">166</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;">Total lease liabilities</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
            </div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div>
              <div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2,114</div>
            </div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">$</div>
          </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom">
            <div style="font-family: 'Times New Roman'; font-size: 10pt;">2,558</div>
          </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information related to lessee's operating leases, including weighted average lease term and discount rate.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of supplemental information for the statement of cash flows related to operating leases.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703248833072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of presentation (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Mar. 13, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Basis of presentation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_GainFromEmployeeRetentionCredit', window );">Gain from employee retention credit</a></td>
<td class="nump">$ 1.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember', window );">Sienna Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Basis of presentation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10.0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_GainFromEmployeeRetentionCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of gain from the Employee Retention Credit, a refundable tax credit against certain employment taxes equal to 50% of the qualified wages an eligible employer pays to employees after March 12, 2020, and before January 1, 2021.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_GainFromEmployeeRetentionCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703248766816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 19,906<span></span>
</td>
<td class="nump">$ 12,623<span></span>
</td>
<td class="nump">$ 42,176<span></span>
</td>
<td class="nump">$ 22,325<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">16,725<span></span>
</td>
<td class="nump">9,727<span></span>
</td>
<td class="nump">34,322<span></span>
</td>
<td class="nump">16,829<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=tact_InternationalMember', window );">International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">3,181<span></span>
</td>
<td class="nump">2,896<span></span>
</td>
<td class="nump">7,854<span></span>
</td>
<td class="nump">5,496<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_FoodServiceTechnologyMember', window );">Food Service Technology [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">3,895<span></span>
</td>
<td class="nump">3,432<span></span>
</td>
<td class="nump">7,353<span></span>
</td>
<td class="nump">5,562<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_FoodServiceTechnologyMember', window );">Food Service Technology [Member] | United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">3,625<span></span>
</td>
<td class="nump">3,281<span></span>
</td>
<td class="nump">6,888<span></span>
</td>
<td class="nump">5,227<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_FoodServiceTechnologyMember', window );">Food Service Technology [Member] | International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">270<span></span>
</td>
<td class="nump">151<span></span>
</td>
<td class="nump">465<span></span>
</td>
<td class="nump">335<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_PosAutomationAndBankingMember', window );">POS Automation [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">1,904<span></span>
</td>
<td class="nump">1,172<span></span>
</td>
<td class="nump">3,701<span></span>
</td>
<td class="nump">2,472<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_PosAutomationAndBankingMember', window );">POS Automation [Member] | United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">1,904<span></span>
</td>
<td class="nump">1,172<span></span>
</td>
<td class="nump">3,686<span></span>
</td>
<td class="nump">2,472<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_PosAutomationAndBankingMember', window );">POS Automation [Member] | International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">15<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_CasinoAndGamingMember', window );">Casino and Gaming [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">12,172<span></span>
</td>
<td class="nump">6,525<span></span>
</td>
<td class="nump">27,983<span></span>
</td>
<td class="nump">11,287<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_CasinoAndGamingMember', window );">Casino and Gaming [Member] | United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">9,475<span></span>
</td>
<td class="nump">3,929<span></span>
</td>
<td class="nump">21,044<span></span>
</td>
<td class="nump">6,717<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_CasinoAndGamingMember', window );">Casino and Gaming [Member] | International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">2,697<span></span>
</td>
<td class="nump">2,596<span></span>
</td>
<td class="nump">6,939<span></span>
</td>
<td class="nump">4,570<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_TransactServicesGroupMember', window );">TransAct Services Group [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">1,935<span></span>
</td>
<td class="nump">1,494<span></span>
</td>
<td class="nump">3,139<span></span>
</td>
<td class="nump">3,004<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_TransactServicesGroupMember', window );">TransAct Services Group [Member] | United States [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">1,721<span></span>
</td>
<td class="nump">1,345<span></span>
</td>
<td class="nump">2,704<span></span>
</td>
<td class="nump">2,413<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=tact_TransactServicesGroupMember', window );">TransAct Services Group [Member] | International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregation of revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 214<span></span>
</td>
<td class="nump">$ 149<span></span>
</td>
<td class="nump">$ 435<span></span>
</td>
<td class="nump">$ 591<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=tact_InternationalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=tact_InternationalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tact_FoodServiceTechnologyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tact_FoodServiceTechnologyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tact_PosAutomationAndBankingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tact_PosAutomationAndBankingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tact_CasinoAndGamingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tact_CasinoAndGamingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=tact_TransactServicesGroupMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=tact_TransactServicesGroupMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703259418224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue, Contract Balances (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_ContractWithCustomerRevenueRecognized', window );">Revenue recognized</a></td>
<td class="nump">$ 1,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityAbstract', window );"><strong>Contract liabilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Unbilled receivables, current</a></td>
<td class="nump">261<span></span>
</td>
<td class="nump">$ 392<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetNoncurrent', window );">Unbilled receivables, net of current portion</a></td>
<td class="nump">153<span></span>
</td>
<td class="nump">163<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent', window );">Customer pre-payments</a></td>
<td class="num">(24)<span></span>
</td>
<td class="num">(101)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue, current</a></td>
<td class="num">(1,222)<span></span>
</td>
<td class="num">(1,329)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Deferred revenue, net of current portion</a></td>
<td class="num">(152)<span></span>
</td>
<td class="num">(143)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_ContractWithCustomerAssetLiabilityNet', window );">Total net contract liabilities</a></td>
<td class="num">$ (984)<span></span>
</td>
<td class="num">$ (1,018)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_ContractWithCustomerAssetLiabilityNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right (asset) to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time and the amount of obligation (liability) to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_ContractWithCustomerAssetLiabilityNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer related to customer prepayments for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_ContractWithCustomerRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized related to obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_ContractWithCustomerRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703251420048">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue, Remaining Performance Obligations (Details)<br> $ in Millions</strong></div></th>
<th class="th">
<div>Jun. 30, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuePerformanceObligationAbstract', window );"><strong>Remaining performance obligations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligations</a></td>
<td class="nump">$ 15.7<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-04-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-04-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuePerformanceObligationAbstract', window );"><strong>Remaining performance obligations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligations</a></td>
<td class="nump">$ 15.4<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected timing of satisfaction, period</a></td>
<td class="text">12 months<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-04-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-04-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuePerformanceObligationAbstract', window );"><strong>Remaining performance obligations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligations</a></td>
<td class="nump">$ 0.2<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected timing of satisfaction, period</a></td>
<td class="text">12 months<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-04-01', window );">Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-04-01</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuePerformanceObligationAbstract', window );"><strong>Remaining performance obligations [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligation', window );">Remaining performance obligations</a></td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1', window );">Expected timing of satisfaction, period</a></td>
<td class="text">12 months<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuePerformanceObligationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenuePerformanceObligationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of transaction price allocated to performance obligation that has not been recognized as revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-04-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2023-04-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-04-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2024-04-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-04-01">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis=2025-04-01</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703251347424">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventories [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves', window );">Raw materials and purchased component parts</a></td>
<td class="nump">$ 10,338<span></span>
</td>
<td class="nump">$ 8,884<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">5,070<span></span>
</td>
<td class="nump">3,144<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 15,408<span></span>
</td>
<td class="nump">$ 12,028<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregated amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed. This amount is net of valuation reserves and adjustments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703251282432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Details) - Sienna Credit Facility [Member] - USD ($)<br></strong></div></th>
<th class="th" colspan="1">6 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jul. 21, 2021</div></th>
<th class="th"><div>Mar. 13, 2020</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAbstract', window );"><strong>Debt [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="nump">6.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsGross', window );">Deferred financing costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 245,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Percentage fee on unused borrowings</a></td>
<td class="nump">0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable', window );">Percentage of eligible accounts receivable</a></td>
<td class="nump">85.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentFinancialCovenantEligibleInventory', window );">Eligible inventory</a></td>
<td class="nump">$ 5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage', window );">Percentage of eligible raw material</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage', window );">Percentage of eligible finished goods inventory</a></td>
<td class="nump">60.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Additional borrowing capacity</a></td>
<td class="nump">$ 5,600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SecuredDebt', window );">Balance outstanding</a></td>
<td class="nump">2,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash', window );">Minimum excess availability and unrestricted cash required</a></td>
<td class="nump">$ 5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash', window );">Number of days to maintain excess availability and unrestricted cash</a></td>
<td class="text">3 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount', window );">Minimum principal amount to be maintained to direct use of funds in deposit account</a></td>
<td class="nump">$ 2,250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid', window );">Minimum principal amount on which interest is paid</a></td>
<td class="nump">$ 2,250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAbstract', window );"><strong>Debt [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Additional borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 750,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember', window );">Prime Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAbstract', window );"><strong>Debt [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="nump">1.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember', window );">Federal Funds Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAbstract', window );"><strong>Debt [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="nump">2.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of eligible accounts receivable included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentFinancialCovenantEligibleInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The minimum value of eligible raw material and finished goods inventory included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentFinancialCovenantEligibleInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of eligible finished goods inventory included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The percentage of eligible raw material included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The minimum sum of (1) excess availability under the Siena Credit Facility (as amended by the Credit Facility Amendment) and (2) unrestricted cash required under a new "springing" deposit account control agreement, permitting the Company to direct the use of funds in its deposit account.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The minimum principal amount, whether or not such amount of loans is actually outstanding, on which interest is paid if the Company does not have the ability to direct the use of funds in the deposit account under the Amended Fee Letter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The minimum principal amount of outstanding borrowings that must be maintained in order to retain the ability to direct the use of funds in the deposit account under the Amended Fee Letter.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The period of time the minimum sum of (1) excess availability under the Siena Credit Facility (as amended by the Credit Facility Amendment) and (2) unrestricted cash must be maintained, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tact_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SecuredDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date, including the current and noncurrent portions, of collateralized debt obligations (with maturities initially due after one year or beyond the operating cycle, if longer). Such obligations include mortgage loans, chattel loans, and any other borrowings secured by assets of the borrower.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SecuredDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=tact_RevolvingCreditFacilitySienaLendingGroupLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_PrimeRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_PrimeRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_FederalFundsEffectiveSwapRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703259436960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings per share (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 765<span></span>
</td>
<td class="num">$ (2,376)<span></span>
</td>
<td class="nump">$ 3,904<span></span>
</td>
<td class="num">$ (6,724)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract', window );"><strong>Shares [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic: Weighted average common shares outstanding (in shares)</a></td>
<td class="nump">9,956<span></span>
</td>
<td class="nump">9,910<span></span>
</td>
<td class="nump">9,943<span></span>
</td>
<td class="nump">9,898<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Add: Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method (in shares)</a></td>
<td class="nump">61<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">73<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted: Weighted average common and common equivalent shares outstanding (in shares)</a></td>
<td class="nump">10,017<span></span>
</td>
<td class="nump">9,910<span></span>
</td>
<td class="nump">10,016<span></span>
</td>
<td class="nump">9,898<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAbstract', window );"><strong>Net income (loss) per common share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="nump">$ 0.08<span></span>
</td>
<td class="num">$ (0.24)<span></span>
</td>
<td class="nump">$ 0.39<span></span>
</td>
<td class="num">$ (0.68)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="nump">$ 0.08<span></span>
</td>
<td class="num">$ (0.24)<span></span>
</td>
<td class="nump">$ 0.39<span></span>
</td>
<td class="num">$ (0.68)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockCompensationPlanMember', window );">Stock Awards [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareReconciliationAbstract', window );"><strong>Earnings per share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive securities excluded from computation of earnings per dilutive share (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,200<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareReconciliationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareReconciliationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480454/718-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockCompensationPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockCompensationPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703248590544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">6 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Dec. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Operating lease expense</a></td>
<td class="nump">$ 483<span></span>
</td>
<td class="nump">$ 487<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashFlowOperatingActivitiesLesseeAbstract', window );"><strong>Cash Flows Related to Operating Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating cash outflows from leases</a></td>
<td class="nump">$ 504<span></span>
</td>
<td class="nump">$ 456<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseDescriptionAbstract', window );"><strong>Operating Lease Weighted Average Remaining Lease Term and Discount Rate [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted average remaining lease term</a></td>
<td class="text">2 years 3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">2 years 8 months 12 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted average discount rate</a></td>
<td class="nump">4.40%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.50%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Maturity of Operating Lease Liabilities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">2023</a></td>
<td class="nump">$ 469<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 972<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2024</a></td>
<td class="nump">1,024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,022<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2025</a></td>
<td class="nump">712<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">710<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2026</a></td>
<td class="nump">22<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">20<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total undiscounted lease payments</a></td>
<td class="nump">2,227<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,724<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="nump">113<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">166<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">$ 2,114<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,558<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashFlowOperatingActivitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashFlowOperatingActivitiesLesseeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseDescriptionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseDescriptionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.23.2</span><table class="report" border="0" cellspacing="2" id="idm140703258416096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="2">6 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income taxes [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (expense) benefit</a></td>
<td class="nump">$ 391<span></span>
</td>
<td class="num">$ (870)<span></span>
</td>
<td class="nump">$ 1,020<span></span>
</td>
<td class="num">$ (2,225)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">33.80%<span></span>
</td>
<td class="num">(26.80%)<span></span>
</td>
<td class="nump">20.70%<span></span>
</td>
<td class="num">(24.90%)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>form10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2023"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:tact="http://transact-tech.com/20230630"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="tact-20230630.xsd" xlink:type="simple"/>
    <context id="c20230101to20230630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2023-07-31</instant>
        </period>
    </context>
    <context id="c20230630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c20230401to20230630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20220630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c20230331_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="c20220331_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="c20230331_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="c20221231_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c20220331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="c20221231_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20230331_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="c20220331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="c20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20221231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c20221231_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20230331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="c20220331_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="c20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20221231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c20230331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="c20220331_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="c20230401to20230630_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220630_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20230630_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20220630_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c20230630_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c20220630_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-06-30</instant>
        </period>
    </context>
    <context id="c20230630_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20210101to20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-13</instant>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:CasinoAndGamingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:FoodServiceTechnologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PosAutomationAndBankingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220401to20220630_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:TransactServicesGroupMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20230401to20230630_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-04-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20240401Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2024-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230401Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20250401Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2025-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_PrimeRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_FederalFundsEffectiveSwapRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:FederalFundsEffectiveSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20210721_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:RevolvingCreditFacilitySienaLendingGroupLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-21</instant>
        </period>
    </context>
    <context id="c20220401to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <context id="c20220101to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-06-30</endDate>
        </period>
    </context>
    <unit id="U001">
        <measure>shares</measure>
    </unit>
    <unit id="U002">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="U003">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U004">
        <measure>pure</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="c20230101to20230630"
      id="Fact_6970aba70d8a4f56abe8d884f1a92023">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate
      contextRef="c20230101to20230630"
      id="Fact_0e4e04f6810d4e7eac08dcf5fca2369a">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="c20230101to20230630"
      id="Fact_38eb9a1a079540a8a1bfe1137a3e8feb">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="c20230101to20230630"
      id="Fact_48ab9c151138410591c2f487836d3ce1">Q2</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="c20230101to20230630"
      id="Fact_37bd0bc3241842a59b886cf67ab6cfb8">0001017303</dei:EntityCentralIndexKey>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20250401Member"
      id="Fact_e8b96d7595e54f3eac451aa3fb8bf1c0"
      unitRef="U002"
      xsi:nil="true"/>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20240401Member"
      id="Fact_46d6edcfceac48c18fff396979fa22a4">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20250401Member"
      id="Fact_88bacb023a1046b0968f765a62b445b3">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <dei:DocumentType
      contextRef="c20230101to20230630"
      id="Fact_886b09ce1319428faaca8f0810a523c1">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="c20230101to20230630"
      id="Fact_1686c95153884c3a801932e596f49083">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="c20230101to20230630"
      id="Fact_92aebd7dd3f64c6fa6b9c016d06cc2ee">2023-06-30</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="c20230101to20230630"
      id="Fact_7378b15d4f6f47929ea736e9fe053c19">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="c20230101to20230630"
      id="Fact_305f400540d14effbac8b0fe6e7ce364">0-21121</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="c20230101to20230630"
      id="Fact_8de05c7335684708bf50b33e5105529c">TRANSACT TECHNOLOGIES INC</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20230101to20230630"
      id="Fact_78c06e5e24ae4b44a143c6868512320a">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20230101to20230630"
      id="Fact_0dd2ff7354a94eb5ab8c0f6c17ccddef">06-1456680</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20230101to20230630"
      id="Fact_754a1b1e742d42f7bcec5a933a6dd083">One Hamden Center</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="c20230101to20230630"
      id="Fact_0c0cc5f3b2cc4755ba438bd133d70e84">2319 Whitney Avenue, Suite 3B</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="c20230101to20230630"
      id="Fact_438401551b9d4b1fb674699bda38575d">Hamden</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20230101to20230630"
      id="Fact_b730829a0ea54139ad48faca36ac7322">CT</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20230101to20230630"
      id="Fact_a1c839e3fadc4f82ba79767c0aa853ed">06518</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20230101to20230630"
      id="Fact_74b2c10b22854538bd408db1ad130a3f">203</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20230101to20230630"
      id="Fact_c02e3624f709476db7740fbd35fa95ef">859-6800</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="c20230101to20230630"
      id="Fact_c228ba241937477f9026489aa922472c">Common stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20230101to20230630"
      id="Fact_d76baeb726674419b52e54bf30dbd9d3">TACT</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20230101to20230630"
      id="Fact_70a5c884ee564c2fb80da45ea8a92cc7">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="c20230101to20230630"
      id="Fact_fe02e56cb60e42d39708a85580fb34ec">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="c20230101to20230630"
      id="Fact_5b18459b2d664aec9e7d91800a2017c2">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="c20230101to20230630"
      id="Fact_4ac6bc601e9349b49291e7725f7955a9">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="c20230101to20230630"
      id="Fact_4f1b0dc85d9c4067bcda0782be8195fc">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20230101to20230630"
      id="Fact_548b8131cdbf42a5b1b41c31010d8588">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="c20230101to20230630"
      id="Fact_a4d65da622294640a7cd29bc78c32a56">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="c20230731"
      decimals="INF"
      id="Fact_fc8900f4d24e4789a73707edd30ab8ca"
      unitRef="U001">9958118</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20230630"
      decimals="-3"
      id="Fact_9545a49ad3d543b0896dd9272bff8ec0"
      unitRef="U002">10756000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20221231"
      decimals="-3"
      id="Fact_79d2005e987a4548921e867e25a6bd0f"
      unitRef="U002">7946000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_60e5e2257d5f44d28c7bd3662a9eac07"
      unitRef="U002">14441000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_abefc36c1ae449fcba47d509aba86455"
      unitRef="U002">13927000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_88b4a608b8e9480e8fdc146ca581099b"
      unitRef="U002">0</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_9fe35daaff0e4007ac1edc5b88a3b85b"
      unitRef="U002">1500000</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:InventoryNet
      contextRef="c20230630"
      decimals="-3"
      id="Fact_d03c1f0cd48c4a74934c0a0fe725b242"
      unitRef="U002">15408000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20221231"
      decimals="-3"
      id="Fact_3840486e7e1b46a4a53be4b043b325a9"
      unitRef="U002">12028000</us-gaap:InventoryNet>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_90017476b5684f599ccd0152ae0da5d5"
      unitRef="U002">707000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_5720f37690ab4430bb1bdbd14eae38bf"
      unitRef="U002">724000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_16719f84d34f40c3821c8395afb4dc2c"
      unitRef="U002">41312000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_b1a7120875ef47c0945493ad3d1b64c0"
      unitRef="U002">36125000</us-gaap:AssetsCurrent>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20230630"
      decimals="-3"
      id="Fact_a63019cf27354cba8c11148bfe6a90a2"
      unitRef="U002">18193000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20221231"
      decimals="-3"
      id="Fact_df75900ca674492fbf4291e695f2d309"
      unitRef="U002">17656000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20230630"
      decimals="-3"
      id="Fact_46fce8a80fb34bb3917a900ce443a3ef"
      unitRef="U002">2838000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20221231"
      decimals="-3"
      id="Fact_c3113b03e3214dfd815dabe4cf443eb5"
      unitRef="U002">2781000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20230630"
      decimals="-3"
      id="Fact_4396a028fc334f24a5df3f57fe4f8e04"
      unitRef="U002">2053000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20221231"
      decimals="-3"
      id="Fact_00edefeb691f4b78bc02ece31117e7a1"
      unitRef="U002">2488000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="c20230630"
      decimals="-3"
      id="Fact_107b8a99003f42839c997377b656eab8"
      unitRef="U002">2621000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="c20221231"
      decimals="-3"
      id="Fact_f328c52accc94aec942a2a0774fee57e"
      unitRef="U002">2621000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20230630"
      decimals="-3"
      id="Fact_872073df1f6c48b9aecba0e57f286846"
      unitRef="U002">6565000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20221231"
      decimals="-3"
      id="Fact_a6af3d6a87fb4cfbaeb4458816b0856e"
      unitRef="U002">7327000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20230630"
      decimals="-3"
      id="Fact_d8224e74569a4e3191d01a5cb9c28088"
      unitRef="U002">1441000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20221231"
      decimals="-3"
      id="Fact_747c800b69ba4a64b7549d2f3f79ed6a"
      unitRef="U002">1364000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="c20230630"
      decimals="-3"
      id="Fact_2fdfe03b481d4489953b729f81da02d0"
      unitRef="U002">165000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="c20221231"
      decimals="-3"
      id="Fact_f75e614abeaf4e66898ae9d40471df1e"
      unitRef="U002">242000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_1bd2eb562726423ea09df8a92082cab5"
      unitRef="U002">333000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_b54e0ccdac0f46ec989eb64bcc818169"
      unitRef="U002">248000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_2adbc4026515413c94aaf3fd0883da2a"
      unitRef="U002">14575000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_a706d5a309bc439a9a462d605a63013b"
      unitRef="U002">15707000</us-gaap:AssetsNoncurrent>
    <us-gaap:Assets
      contextRef="c20230630"
      decimals="-3"
      id="Fact_7f7a654222eb498faf894fdd789f1825"
      unitRef="U002">55887000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20221231"
      decimals="-3"
      id="Fact_fa58f07501484106a34accb906a8c15b"
      unitRef="U002">51832000</us-gaap:Assets>
    <us-gaap:LinesOfCreditCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_fb9ce4aa49b44977a5a2fd702ed4f6d1"
      unitRef="U002">2250000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_549f1159db934c52ab6087c6fd0de80e"
      unitRef="U002">2250000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_29ae2208e0014023a7d1d08d708136b0"
      unitRef="U002">6321000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_d417e6fd989749e9a25794a244257b5d"
      unitRef="U002">7395000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_62fd24808fc344a6a49b70d69a9eb283"
      unitRef="U002">5511000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_ed20023c541a468f9ba16a1709755342"
      unitRef="U002">4077000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_fb57f0a320d747e7b555e9db37295675"
      unitRef="U002">904000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_27f63843f5fb4efa8d8c04a26c7a3451"
      unitRef="U002">875000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_62130f92a0fb4de699a00374df9e2c39"
      unitRef="U002">1222000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_534d008ff360482c96bdab44bb79a838"
      unitRef="U002">1329000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_c61879ab57104a00b035ea4ca40e970b"
      unitRef="U002">16208000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_d243f07976eb4140bd6509824f9282d4"
      unitRef="U002">15926000</us-gaap:LiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_ecbe4383b9e645639e84609b71e4963a"
      unitRef="U002">152000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_2a7427f1a4d1479bb9367cb0fb8f7ff2"
      unitRef="U002">143000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_8ea0df603f52409f8e66263d741e885b"
      unitRef="U002">1210000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_6508a0ef087344db8c33fff728350d7c"
      unitRef="U002">1683000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_d1b2cadf7ffc4b21a36ab53530138603"
      unitRef="U002">227000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_ff86b3ca8e854bf6835b36659906862c"
      unitRef="U002">218000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_535f817e141e4937ae541d4d9218ba5a"
      unitRef="U002">1589000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_c075fce9c1f74b31bea56a88ca4ffd63"
      unitRef="U002">2044000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="c20230630"
      decimals="-3"
      id="Fact_f1746504ba1e4d4ba7f4fb43bf60cbf3"
      unitRef="U002">17797000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="c20221231"
      decimals="-3"
      id="Fact_6b2680fdcabe4305a19dda7044f7b86b"
      unitRef="U002">17970000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20230630"
      id="Fact_f99d3723b5c241478d8e05974209adcf"
      unitRef="U002"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20221231"
      id="Fact_5ccaf4da3617441ca39ae5b35c76e01a"
      unitRef="U002"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20221231"
      decimals="2"
      id="Fact_39ea429c0d84417a9484a774eb2a41c3"
      unitRef="U003">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20230630"
      decimals="2"
      id="Fact_06cf2cc8210c4875987a205b8ed9cf39"
      unitRef="U003">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20230630"
      decimals="0"
      id="Fact_b15604aca6ab46c88ae1119c0917d474"
      unitRef="U001">20000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20221231"
      decimals="0"
      id="Fact_282f5e196b4f4a0a99bc379301cfb944"
      unitRef="U001">20000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20230630"
      decimals="0"
      id="Fact_ecb8104a9b034e388fca335b5318adf6"
      unitRef="U001">14001935</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20221231"
      decimals="0"
      id="Fact_b879d002d5164784a1ca08f6076c3161"
      unitRef="U001">13956725</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20230630"
      decimals="0"
      id="Fact_4cc27091ae11412188a9a3a87d04b530"
      unitRef="U001">9957093</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20221231"
      decimals="0"
      id="Fact_ab0b6328acf9414ebef9e92fe2f3d41d"
      unitRef="U001">9911883</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="c20230630"
      decimals="-3"
      id="Fact_c449457e7ea5474cb0476809f505806e"
      unitRef="U002">140000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="c20221231"
      decimals="-3"
      id="Fact_4cb9cf600e80406c994caa9a7f0566d3"
      unitRef="U002">139000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="c20230630"
      decimals="-3"
      id="Fact_7e390a85b2a64d2198b9ebf3f4eb9254"
      unitRef="U002">56594000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="c20221231"
      decimals="-3"
      id="Fact_b46de043e1594325a85bee6043f0d368"
      unitRef="U002">56282000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20230630"
      decimals="-3"
      id="Fact_13cb103534e14cad818cdd51ebfd56e7"
      unitRef="U002">13534000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20221231"
      decimals="-3"
      id="Fact_d6d929483e1740e9b400628baa42fb89"
      unitRef="U002">9630000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20230630"
      decimals="-3"
      id="Fact_cca37ac085ae457b9a3305ce305991c2"
      unitRef="U002">-68000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20221231"
      decimals="-3"
      id="Fact_da5857ca7537407b9284af6eafc7ae9d"
      unitRef="U002">-79000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c20221231"
      decimals="0"
      id="Fact_6fae60eccf2d475c8da12fc9ebaa2314"
      unitRef="U001">4044842</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c20230630"
      decimals="0"
      id="Fact_157175504c47446d89705cc6d8eed923"
      unitRef="U001">4044842</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue
      contextRef="c20230630"
      decimals="-3"
      id="Fact_07a397dc2c7d46af8e0e83f5c281419a"
      unitRef="U002">32110000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="c20221231"
      decimals="-3"
      id="Fact_3bac9342585e4776b72860c745737a9d"
      unitRef="U002">32110000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="c20230630"
      decimals="-3"
      id="Fact_38a67896ed45462992c56a66de031422"
      unitRef="U002">38090000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231"
      decimals="-3"
      id="Fact_0da25a5135f540e1a183d656b4a28e62"
      unitRef="U002">33862000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20230630"
      decimals="-3"
      id="Fact_f8f29ef1ddd84752b71a18240c11e797"
      unitRef="U002">55887000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20221231"
      decimals="-3"
      id="Fact_8a0b455e85884e61b68700230681cc8d"
      unitRef="U002">51832000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_49c6cc78cb9c4f16ad9e9c913510aee7"
      unitRef="U002">19906000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_51d679c0e51242ab863356c8f875a424"
      unitRef="U002">12623000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_42290161cb504f619fc87332aa9afaa2"
      unitRef="U002">42176000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_66ec76a9addc47ec8661c8bffdec0503"
      unitRef="U002">22325000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_40e9cc34b816444eab7d05ea77cac34a"
      unitRef="U002">9048000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_5606c40230f942b78a29aaa1343a4c0a"
      unitRef="U002">7189000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_07f69094300d440783aade153456c8a5"
      unitRef="U002">19063000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_b71c3b6d93ab46199ae89d279fa2e88c"
      unitRef="U002">14325000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_a02ec46bb6ed44ffb4ebf386337ddd75"
      unitRef="U002">10858000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_3c7b28e19b7b4d458400ae8cdd59c6f0"
      unitRef="U002">5434000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_d4f9a5aacb434db1ae45e48596644d89"
      unitRef="U002">23113000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_7c74776ee7e94afc86d70ea72d3d261a"
      unitRef="U002">8000000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_0af4585430c547389149a8fc4d2ab6a1"
      unitRef="U002">2505000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_2257ce4f7617466687fd323d0c2fc2d4"
      unitRef="U002">2172000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_f3c8c43a6ab742d69b369c3c858ed9a7"
      unitRef="U002">4774000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_fad5b57419ea474699462975a8f621d7"
      unitRef="U002">4455000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_eb02a341128543619133f47852a1b626"
      unitRef="U002">2684000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_6c680ac3b6be45d580342bef899dc8de"
      unitRef="U002">3293000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_d40f1befa01840498ca7f0f9e6ce3ed8"
      unitRef="U002">5441000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_8efc22ae8e1d45f7a3667ee4dbfa9dc9"
      unitRef="U002">5976000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_98edf18897ef4766b2beef888a7d97a3"
      unitRef="U002">4445000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_3ea23dae3121423680384154f2ec8ce5"
      unitRef="U002">2923000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_50163940642e4c48af9bf638e18ad99a"
      unitRef="U002">7861000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_41f0d339f89b4e17a14974cbed037a77"
      unitRef="U002">6127000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_d06fb4a0cd4e43efbcfdb66b970476ba"
      unitRef="U002">9634000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_bc2c69b6d1ba44b4b0eb5bf7882e6fc0"
      unitRef="U002">8388000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_b146974963764fdcaee4f86384088b3c"
      unitRef="U002">18076000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_e309e854424843a28b6c981bfe6eb5e6"
      unitRef="U002">16558000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_7da6322377214027b339353987ab3321"
      unitRef="U002">1224000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_ce31d0b4e9ea4d889ff8a413f2c0fd81"
      unitRef="U002">-2954000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_0eda16b0d75f4336b8c841c03362363f"
      unitRef="U002">5037000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_4023e22e217f4cbf9c97c624f25e681c"
      unitRef="U002">-8558000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_297ec87fac744c8a84c2dadf11bda5b3"
      unitRef="U002">-68000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_adf07c254ade4d0180bf9a91aaffee58"
      unitRef="U002">-28000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_05e4b36600674ef4a1d87a88faf01bd3"
      unitRef="U002">-134000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:InterestIncomeExpenseNonoperatingNet
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_2fdcbde50714462cb851ab7b9b50d76f"
      unitRef="U002">-92000</us-gaap:InterestIncomeExpenseNonoperatingNet>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_72b0009b6a3a4cec965777db6626d302"
      unitRef="U002">0</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_55aa42d95bf54f9a8beb7daac51556b2"
      unitRef="U002">-264000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_e04b0489c43d46f9997ceffc68489e58"
      unitRef="U002">21000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_38cf51bc80a2442d87d007486c7fb316"
      unitRef="U002">-299000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_33f3d872c42245ffb287a645220f60c4"
      unitRef="U002">-68000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_18b3cc8c8c764f08b4e002643c54ec21"
      unitRef="U002">-292000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_3456c30c9ef24036b05a1253c21f05e2"
      unitRef="U002">-113000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_e05de8040384487ab1689461424f51f1"
      unitRef="U002">-391000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_f32440d359834ea9900cf6dd7c0a975c"
      unitRef="U002">1156000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_0640542abe9041ebb96571a68fb80f59"
      unitRef="U002">-3246000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_9ade661ccc6543f6bf2983e4f02af2a4"
      unitRef="U002">4924000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_e63837c2d4d548f9874bf42c8ea0d0f3"
      unitRef="U002">-8949000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_d0af00eccf33479292816367e493f429"
      unitRef="U002">391000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_e2b302d3fd5345728f4b40b50dd58200"
      unitRef="U002">-870000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_c69f93e9134142e48ff692d1d2e742eb"
      unitRef="U002">1020000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_8f414623b24f4de4a493f4326385100c"
      unitRef="U002">-2225000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_e065af5327d74da7beeaef64f6c7f256"
      unitRef="U002">765000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_4d00248474644d95b9cc7bc357a2936a"
      unitRef="U002">-2376000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_0d94a1fe2e3f40db80a4171d8556b7db"
      unitRef="U002">3904000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_be49de130d0446d1a5f2daaf9b3dd8ee"
      unitRef="U002">-6724000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20230401to20230630"
      decimals="2"
      id="Fact_7ae152d9ac404b1dadf2bd3e08770b39"
      unitRef="U003">0.08</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20220401to20220630"
      decimals="2"
      id="Fact_918e2ea5d13a42b692928ab5221bc281"
      unitRef="U003">-0.24</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20230101to20230630"
      decimals="2"
      id="Fact_68d36bf84dc74a5b9b746dd6f1211169"
      unitRef="U003">0.39</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20220101to20220630"
      decimals="2"
      id="Fact_5db1e471ce5845b08cdda3146915319f"
      unitRef="U003">-0.68</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20230401to20230630"
      decimals="2"
      id="Fact_7e5e5c98a5e54b439719225af95f3b6b"
      unitRef="U003">0.08</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20220401to20220630"
      decimals="2"
      id="Fact_0d98b358f5b54afe9291c2667c71cf92"
      unitRef="U003">-0.24</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20230101to20230630"
      decimals="2"
      id="Fact_77670d5fccda4dfe918123f15dd647fc"
      unitRef="U003">0.39</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20220101to20220630"
      decimals="2"
      id="Fact_acc8e5a83df74bcaa3aad77aab046ddb"
      unitRef="U003">-0.68</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_058991bb13eb4c9994a5685f82a5305e"
      unitRef="U001">9956000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_d9626428f48942eb849fc2a24621f023"
      unitRef="U001">9910000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_334ac136897542e8b5184ab2d8806fc8"
      unitRef="U001">9943000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_0d43c95d2d7c4376b609e5180f2c7e57"
      unitRef="U001">9898000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_c4b4c36c60524b1fbde9e7086ab8e89b"
      unitRef="U001">10017000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_d8b28371a6194ff99fd2083d1645c22e"
      unitRef="U001">9910000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_f4313d863d684b4f930eff73fb4bde9b"
      unitRef="U001">10016000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_9beaf69dbfdd4de59ec26ef586307b40"
      unitRef="U001">9898000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_d6ebdb0c01d041b7900773aae457439d"
      unitRef="U002">765000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_4722b7456d3649cdab8005ec69d2eb33"
      unitRef="U002">-2376000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_4aaa4a77b11d4ee59e0ba240a12d3998"
      unitRef="U002">3904000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_a72161b5337b4b589e95b7d6420b4d65"
      unitRef="U002">-6724000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_f63b9bc957914b1f87f9a3d4efa14893"
      unitRef="U002">9000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_beb62e61b110465894146699aa3fce9b"
      unitRef="U002">-8000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_cc9d95a546444450b5a7b7586806318e"
      unitRef="U002">11000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_830dd705145e4d62a45227e59728a41b"
      unitRef="U002">-50000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_ff73052f574d4d07b3cb1d86dc2d8c12"
      unitRef="U002">774000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_65043afb9b734f58b008d3e568422635"
      unitRef="U002">-2384000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_ba70bd8b1eb34b98a48225a9da67114e"
      unitRef="U002">3915000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_ec5ae3e6543447ce8660b0287281ff0d"
      unitRef="U002">-6774000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_ebedc51791cd4d459046e0ac5cae7241"
      unitRef="U002">3904000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_517c59a8241a46af815fcd9d4c23226c"
      unitRef="U002">-6724000</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_0b808d51ba5f42faafe98e5c2c5297a2"
      unitRef="U002">398000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_708d8cc7bfc64a1ea90658a26fbaf49b"
      unitRef="U002">581000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationAndAmortization
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_5266bb4f7af442bfbec85e8a4ab01472"
      unitRef="U002">722000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_441ceb2a77dc4985a0b5d2a919948f1a"
      unitRef="U002">625000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_885a8144395046d2b492626ae7d00325"
      unitRef="U002">762000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_eb1ce58252ce470194c7040f1dae2661"
      unitRef="U002">-2227000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ForeignCurrencyTransactionGainLossUnrealized
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_6644e150796a4b44a931eb32810f6467"
      unitRef="U002">-21000</us-gaap:ForeignCurrencyTransactionGainLossUnrealized>
    <us-gaap:ForeignCurrencyTransactionGainLossUnrealized
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_bce24d138e624132853583849c0df464"
      unitRef="U002">-298000</us-gaap:ForeignCurrencyTransactionGainLossUnrealized>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_391f6f39de0e4e1aa597bdb93792a145"
      unitRef="U002">434000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_f542bba502dd45a4a522dc488fbcf532"
      unitRef="U002">4547000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_9bc5b028bc73422e946ded50855a3315"
      unitRef="U002">-1500000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_02fb169e94954ae29cbc1ade478c499b"
      unitRef="U002">0</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_956978afdb154b8a9a73a5c6c3d4cee4"
      unitRef="U002">3363000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_d994f7d68e87409bb95ac215f2104445"
      unitRef="U002">3250000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_73939bc2b011475abcdf5fa1ebcdabcf"
      unitRef="U002">86000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_ffe34e83071b40da9df8f6dbcb731c36"
      unitRef="U002">-26000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_4bd726a69a034ba7830d2b1ecb7c856f"
      unitRef="U002">-1063000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_e21c508a4bb04f6481db084de4a02bc8"
      unitRef="U002">789000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_1da58e9e7ec54bd2bed4ef76bfb03cf8"
      unitRef="U002">1329000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_17608c7f17c645fd8e006fa6abad5094"
      unitRef="U002">-159000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_94ddced28c2b4e8a85612ea2b7515fea"
      unitRef="U002">3690000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_97b20fe9f60b440aa3d58562a55a2ae9"
      unitRef="U002">-14588000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_d6c6bfe75c754a0daea7cdecbcdb70f0"
      unitRef="U002">689000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_00369d37dd8943209aa436e2684d78dc"
      unitRef="U002">744000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_14e6859dc7b14822abd7074dac4eb9c4"
      unitRef="U002">-689000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_accd4069bd2548a69374efa2c615156b"
      unitRef="U002">-744000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_040a7970f6a64038810565b191a82872"
      unitRef="U002">86000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_973488112c0b466cbb0f040c789c6b9a"
      unitRef="U002">119000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsOfLoanCosts
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_8296134cbd614dd496be5dfae61883c7"
      unitRef="U002">0</us-gaap:PaymentsOfLoanCosts>
    <us-gaap:PaymentsOfLoanCosts
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_dd84d33017654a0c98a1a3075a9df843"
      unitRef="U002">10000</us-gaap:PaymentsOfLoanCosts>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_a5a9ccf400c448e6942c46b746cbc3b3"
      unitRef="U002">-86000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_b56f7be4b792464b87f44cdab479cde4"
      unitRef="U002">-129000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_79bb3569b9e447aa94b6a2caf8758a74"
      unitRef="U002">-105000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_dad1013c7a334ff5b9ce9c34e27c7f1b"
      unitRef="U002">-103000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_9183e56039f84365830fecea99c7f6b1"
      unitRef="U002">2810000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_1e84c267cd104679b38660ead65920a4"
      unitRef="U002">-15564000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20221231"
      decimals="-3"
      id="Fact_23e315c010d94f138ef391246c71a677"
      unitRef="U002">7946000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20211231"
      decimals="-3"
      id="Fact_f8b74ac0132140d2867fac9cc5c4695a"
      unitRef="U002">19457000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20230630"
      decimals="-3"
      id="Fact_fd69bcc7a52b4dd99a3a3473f49e3319"
      unitRef="U002">10756000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20220630"
      decimals="-3"
      id="Fact_a2b13fa959a74262baf2daf782d4c194"
      unitRef="U002">3893000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_1850159952cc436bb14b8f08c30b77e6"
      unitRef="U002">41000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_9b71e5e6643c4c719f6d357d8808245e"
      unitRef="U002">7000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:StockholdersEquity
      contextRef="c20230331"
      decimals="-3"
      id="Fact_f4aa16cd41d7478c841d47d0be256687"
      unitRef="U002">37196000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220331"
      decimals="-3"
      id="Fact_5f0fb284521d40f1969a477f4c42036b"
      unitRef="U002">34771000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231"
      decimals="-3"
      id="Fact_bac51c96457a4189a1f9ec47cbaabf4c"
      unitRef="U002">33862000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231"
      decimals="-3"
      id="Fact_8e290b78699a4ec8a2f2b5e906d68414"
      unitRef="U002">38984000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_213c6a6f324341dcb518f7e9684744f6"
      unitRef="U002">140000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_8df85c86570646cebc4f654ad1b6bd15"
      unitRef="U002">139000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_8158e2b9a0f44cd4a75c6f079bf86c52"
      unitRef="U002">139000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_5c2d78a5847f45fe8e1ea2f5e9036a90"
      unitRef="U002">139000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20230401to20230630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_78a252b9a55f4f33bfadab81d5dcb069"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20220401to20220630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_7e1690963fcd414b95c49020ef13bec0"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20230101to20230630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_d578bcd73ae54863869eb961c0d45762"
      unitRef="U002">1000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20220101to20220630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_24e1e79681ed436ca91fa9b5acc07e00"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_e2fa71296c5f4eb794e8d5f8601123c4"
      unitRef="U002">140000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_8b4324ab79f147f1ad33dc2a7f57f02a"
      unitRef="U002">139000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_248ebbe392e64f1ab046b32f3d110e30"
      unitRef="U002">140000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_31fa8d76540f4d0188c7b1f7de48e964"
      unitRef="U002">139000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_9bb8d026c1554b119e3c7aba324d73bd"
      unitRef="U002">56474000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_3663cac3294a4a4cb4524823db928108"
      unitRef="U002">55423000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_dfc375913b684bad88935ce99234dd61"
      unitRef="U002">56282000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_fc8b02c6ee114fcb8000903a7cf8ebab"
      unitRef="U002">55246000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20230401to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_9529339b7d0b4b3b8ddbe2b97b0fb89c"
      unitRef="U002">120000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20220401to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_904259d780b84fceb3cf30d79dbeda38"
      unitRef="U002">285000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20230101to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_aa58902b33f8427fa07a60947e2f25b8"
      unitRef="U002">398000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20220101to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_711ddea9b1ad49ba9218f5fe83b16537"
      unitRef="U002">581000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited
      contextRef="c20230401to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_b77f6a83ad524b75bad9f15f1a794460"
      unitRef="U002">0</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited
      contextRef="c20220401to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_eed4cb03e1744ec4ad6e7d7673cf9e69"
      unitRef="U002">0</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited
      contextRef="c20230101to20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_5d0e569e13c64b8cb63d91de1cc9f3d0"
      unitRef="U002">86000</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited>
    <us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited
      contextRef="c20220101to20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_b71a165ffa114102b8a7c0d9be0266b7"
      unitRef="U002">119000</us-gaap:StockGrantedDuringPeriodValueSharebasedCompensationForfeited>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_ee20d0aeada64d78a62c64d7d983cb51"
      unitRef="U002">56594000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_57e8618a3e294ab6826f74ae9aeaac58"
      unitRef="U002">55708000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_98c25c40603e42b988ef4ac3a8240f9b"
      unitRef="U002">56594000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_c942ca1025aa4776b0e1d3939f05730b"
      unitRef="U002">55708000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f7c49ba46f5746859381ac162aea6ad3"
      unitRef="U002">12769000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_863e7148ad9042e8b09913ecdb6a30d3"
      unitRef="U002">11218000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_d0563874e1284365975116ae9065d2ec"
      unitRef="U002">9630000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_747eadb37d1f4a74b76e783f8ffc7bf7"
      unitRef="U002">15566000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="c20230401to20230630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_794c7f1f1f0747c0b166eab5bb137f73"
      unitRef="U002">765000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220401to20220630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_53f91b525610417cb1b17c1e05756f4c"
      unitRef="U002">-2376000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20230101to20230630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_19d34f5fc3aa414ea564ab72a48dffd3"
      unitRef="U002">3904000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220101to20220630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_d2f6f06802e1478f977de61b42dd3a4b"
      unitRef="U002">-6724000</us-gaap:NetIncomeLoss>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f04487cd3ef14687bfe44a8e4274488c"
      unitRef="U002">13534000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_5015c42ff0304e4cb92706ff7c221448"
      unitRef="U002">8842000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_18686c8b740c4acfa6009f3a38b9c1f1"
      unitRef="U002">13534000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_7c6779495d4949ce9c857a26bbce8489"
      unitRef="U002">8842000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_974f190123b748bb9901787a476be433"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_7c935425a3aa436e834fc018e8cecb75"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_dfae369367b9402982da3c1741d94d49"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_162a630f7e2d4476aecd328931614c34"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_f5b9d28ba3554817b969ce2e8dbc57b7"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_d6ee4801bb354420b2cacb502703510c"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_ca95fdbb16e643ea83eb420deac49360"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_086d71009b1a425d837bb2d6b110c21d"
      unitRef="U002">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_df0a00061c014985912f3b429ce4eb27"
      unitRef="U002">-77000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_a3db16b52d3544749533d35b2f5e7bcb"
      unitRef="U002">101000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20221231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_66a2d78dec0b49aab925c4da5b1c3fad"
      unitRef="U002">-79000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_6a77d12481474ee5b97bc2a350bed2af"
      unitRef="U002">143000</us-gaap:StockholdersEquity>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20230401to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d450ef3e7c8941718919045adaebaeac"
      unitRef="U002">9000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20220401to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_03e5fdf592384c678fc085b382aeb8d2"
      unitRef="U002">-8000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20230101to20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_8343d16f68214a1a938e67bcf4f090bf"
      unitRef="U002">11000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20220101to20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_ce6079748bdf4647891477ce302b1191"
      unitRef="U002">-50000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_6e00de8b6570493e830765533df71e0b"
      unitRef="U002">-68000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_45da2098693b44aa9d9b32ce5da2772e"
      unitRef="U002">93000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_6287a9f74a4840e2a274a2e7292344ae"
      unitRef="U002">-68000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_3913f83bec424aa7a71ad0d6d2460011"
      unitRef="U002">93000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630"
      decimals="-3"
      id="Fact_5f4669bc5cf84dfbad84efc0d9ba1566"
      unitRef="U002">38090000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630"
      decimals="-3"
      id="Fact_ff20ca390ae14f9a98accc831b936c38"
      unitRef="U002">32672000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20230630"
      decimals="-3"
      id="Fact_a5d0c6125e1a49f994030d70c6c59e6a"
      unitRef="U002">38090000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20220630"
      decimals="-3"
      id="Fact_099c59fe8d264b66be8419f1476fa70a"
      unitRef="U002">32672000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_35c9046a21ec4fd58d63861174b34446"
      unitRef="U001">3000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_3aae10d1773746a79cb0e6dbe85c7df9"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_9d262798bb1143da9942051e4c37702c"
      unitRef="U001">57000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_3624a0b068e34adeb00f20787a476f5b"
      unitRef="U001">63000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_8f46c278ce7249d096ff3f5e1597210e"
      unitRef="U001">0</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_d2e8e733fade4f668de0cdd0e8623e43"
      unitRef="U001">0</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_de360ffbf9cb493bbae73ea2f702803e"
      unitRef="U001">12000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_2a1308e9729149e09cec724bbdb4b623"
      unitRef="U001">26000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock
      contextRef="c20230101to20230630"
      id="Text_acbb907bcf6a42b08d05cc4b3e119c3c">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1. Basis of presentation&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;The &lt;/span&gt;accompanying unaudited financial statements of TransAct Technologies Incorporated (&#x201c;TransAct&#x201d;,
      the &#x201c;Company&#x201d;, &#x201c;we&#x201d;, &#x201c;us&#x201d;, or &#x201c;our&#x201d;) have been prepared in accordance with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;) for interim financial information.&#160; Accordingly, they do not include all of the
      information and footnotes required by U.S. GAAP to be included in full year financial statements.&#160; In the opinion of management, all adjustments considered necessary for a fair statement of the results for the periods presented have been included and
      are of a normal recurring nature&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;.&#160; The &lt;/span&gt;December 31, 2022&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; Condensed Consolidated Balance Sheet data was derived from audited financial statements, but does not include all disclosures required by U.S. GAAP.&#160; These interim financial statements
        should be read in conjunction with the audited financial statements in our Annual Report on Form 10-K for the year ended &lt;/span&gt;December 31, 2022&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; (the &#x201c;2022 Form 10-K&#x201d;).&lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: justify;"&gt;&lt;br/&gt;
      &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; The results of operations for the three and six months ended&#160;June 30, 2023
        are not necessarily indicative of the results to be expected for the full year ending December 31, 2023. &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Impact of the COVID-19 Pandemic and Global Supply Chain Disruptions&lt;/div&gt;

&lt;div style="text-align: justify; margin-right: 0.1pt; margin-left: 0.1pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Since early 2020 and into the first quarter of 2022, the COVID-19 pandemic caused uncertainty and disruption in the global
      economy and financial markets.&#160; Similar to other companies, TransAct has also been impacted by global supply chain issues, increased shipping costs and inflationary pressures, which have increased our costs and, in some instances, slowed our ability
      to deliver products to our customers.&#160; During 2021, we experienced significantly lower sales levels.&#160; However, during 2022, we were able to increase our inventory levels and minimize the impact to our customers by successfully modifying our products
      that were affected by supply chain disruptions, as well as sourcing component parts from alternate suppliers.&#160; At the same time, after a slowdown resulting from the Omicron and other variants of COVID-19 that began to ease in the first six months of
      2022, we continued to experience demand recovery during the remainder of 2022 and into 2023. Although we were able to increase inventory levels during 2022 and expect to continue to do so in the balance of 2023, there can be no assurance that new or
      continuing supply chain disruptions will not affect our products or that we will be able to make timely modifications to address any future supply chain issues that arise.&#160; Further, while we have offset most of our cost increases by increasing prices
      of our products, there can be no guarantee that we will not be impacted by the economic effects of any future cost increases that cannot be predicted, supply chain disruptions, inflationary pressures and potential new COVID-19 variants in the markets
      we serve and from which we source our supplies and parts.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Balance Sheet, Cash Flow and Liquidity. &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;We have taken the following actions to increase liquidity and strengthen our financial position in an effort to mitigate the negative impacts from the COVID&lt;/span&gt;-19&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; pandemic, supply chain disruptions and inflationary pressures:&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"&gt;&lt;/td&gt;

    &lt;td style="width: 18pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#x25cf;&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: justify;"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;Employee Retention Credit &#x2013; Under the provisions of the CARES Act, the Company received a refundable employee retention credit subject to certain criteria.&#160; In connection with the
              CARES Act, the Company recognized the employee retention credit during the fourth quarter of 2021 and recorded $1.5 million as
              &#x201c;Gain from employee retention credit&#x201d; in the Consolidated Statement of Operations for the year ended December 31, 2021 and the related receivable as &#x201c;Employee retention credit receivable&#x201d; in the Consolidated Balance Sheet as of December 31,
              2021 and 2022.&#160; We received these funds in the first quarter of 2023.&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"&gt;&lt;/td&gt;

    &lt;td style="width: 18pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#x25cf;&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: justify;"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;Credit Facility &#x2013; On March 13, 2020, we entered into a credit facility with Siena Lending Group LLC that provides a revolving credit line of up to &lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;$&lt;/span&gt;10.0&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; million&lt;/span&gt;,
              subject to a borrowing base, and on July 19, 2022, we entered into an amendment to extend the maturity of the facility to March 13, 2025.&#160; See Note 5 for further details regarding this facility.&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;After reviewing whether conditions and/or events raise substantial doubt about our ability to meet future financial obligations over the 12 months following the date on
      which the Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q were issued, including consideration of the actions to manage expenses and liquidity, we believe that our net cash to be provided by operations
      combined with our cash and cash equivalents and borrowing availability under our revolving credit facility will provide sufficient liquidity to fund our current obligations, capital spending, and working capital requirements and to comply with the
      financial covenants of our credit facility over at least 12 months following the date that the Condensed Consolidated Financial Statements were issued.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Use of Assumptions and Estimates&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Management&#x2019;s belief that the Company will be able to fund its planned operations over the 12 months following the date on which the Condensed Consolidated Financial
      Statements were issued is based on assumptions which involve significant judgment and estimates of future revenues, inflation, rising interest rates, capital expenditures and other operating costs. Our current assumptions are that casinos and
      restaurants will remain open and consumer traffic will continue to remain strong during the remainder of 2023. Though demand for our products at casinos has increased substantially in 2022 and during the first six months of 2023, we cannot predict
      the ultimate impact of the current economic environment, including inflation, rising interest rates and supply chain disruptions on our customers, which may impact sales. We believe that we are positioned to withstand the impact of any potential
      economic downturn or slower than anticipated economic recovery. However, should conditions warrant, we believe we will be able to take additional financial and operational actions to cut costs and/or increase liquidity.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;In addition, the presentation of the accompanying unaudited financial statements requires us to make estimates and judgments that affect the reported amounts of assets,
      liabilities, revenue and expenses, and the disclosure of contingent assets and liabilities.&#160; Our estimates include those related to revenue recognition, accounts receivable, inventory obsolescence, goodwill and intangible assets, the valuation of
      deferred tax assets and liabilities, depreciable lives of equipment, share-based compensation and contingent liabilities.&#160; We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the
      circumstances.&#160; Actual results could differ from those estimates used.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Certain reclassifications have been made to prior year financial statements to conform to classifications used in the current year.&lt;/div&gt;
</us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="c20230101to20230630"
      id="Text_aef62442dc27490e977b8a41307ebaef">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;The &lt;/span&gt;accompanying unaudited financial statements of TransAct Technologies Incorporated (&#x201c;TransAct&#x201d;,
      the &#x201c;Company&#x201d;, &#x201c;we&#x201d;, &#x201c;us&#x201d;, or &#x201c;our&#x201d;) have been prepared in accordance with accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;) for interim financial information.&#160; Accordingly, they do not include all of the
      information and footnotes required by U.S. GAAP to be included in full year financial statements.&#160; In the opinion of management, all adjustments considered necessary for a fair statement of the results for the periods presented have been included and
      are of a normal recurring nature&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;.&#160; The &lt;/span&gt;December 31, 2022&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; Condensed Consolidated Balance Sheet data was derived from audited financial statements, but does not include all disclosures required by U.S. GAAP.&#160; These interim financial statements
        should be read in conjunction with the audited financial statements in our Annual Report on Form 10-K for the year ended &lt;/span&gt;December 31, 2022&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; (the &#x201c;2022 Form 10-K&#x201d;).&lt;/span&gt;&lt;/div&gt;
</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <tact:GainFromEmployeeRetentionCredit
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_497a4fc5df194bc6aee8c2066fb627ea"
      unitRef="U002">1500000</tact:GainFromEmployeeRetentionCredit>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_70f880d5652243ba9929b745647b7ba2"
      unitRef="U002">10000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:UseOfEstimates
      contextRef="c20230101to20230630"
      id="Text_1ae2b40b68c84f8190c1283a27d13d74">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Use of Assumptions and Estimates&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Management&#x2019;s belief that the Company will be able to fund its planned operations over the 12 months following the date on which the Condensed Consolidated Financial
      Statements were issued is based on assumptions which involve significant judgment and estimates of future revenues, inflation, rising interest rates, capital expenditures and other operating costs. Our current assumptions are that casinos and
      restaurants will remain open and consumer traffic will continue to remain strong during the remainder of 2023. Though demand for our products at casinos has increased substantially in 2022 and during the first six months of 2023, we cannot predict
      the ultimate impact of the current economic environment, including inflation, rising interest rates and supply chain disruptions on our customers, which may impact sales. We believe that we are positioned to withstand the impact of any potential
      economic downturn or slower than anticipated economic recovery. However, should conditions warrant, we believe we will be able to take additional financial and operational actions to cut costs and/or increase liquidity.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;In addition, the presentation of the accompanying unaudited financial statements requires us to make estimates and judgments that affect the reported amounts of assets,
      liabilities, revenue and expenses, and the disclosure of contingent assets and liabilities.&#160; Our estimates include those related to revenue recognition, accounts receivable, inventory obsolescence, goodwill and intangible assets, the valuation of
      deferred tax assets and liabilities, depreciable lives of equipment, share-based compensation and contingent liabilities.&#160; We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the
      circumstances.&#160; Actual results could differ from those estimates used.&lt;/div&gt;
</us-gaap:UseOfEstimates>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="c20230101to20230630"
      id="Text_8abadc33c79b47d384c518956a4f69d3">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Certain reclassifications have been made to prior year financial statements to conform to classifications used in the current year.&lt;/div&gt;
</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="c20230101to20230630"
      id="Text_64118e6f160d487d983651d809b928e0">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2. Significant accounting policies&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;For a discussion of our significant accounting policies, see Note 2, &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Summary of
        significant accounting policies&lt;/span&gt; within Part II, Item 8. &#x201c;Financial Statements and Supplementary Data&#x201d; in the 2022 Form 10-K for the year ended December 31, 2022.&#160; There have been no changes to our significant accounting policies since our
      2022 Form 10-K for the year ended December 31, 2022.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Recently Adopted Accounting Pronouncement&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;In June 2016, the FASB issued ASU 2016-13, &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Financial Instruments - Credit Losses
          (Topic 326): Measurement of Credit Losses on Financial Instruments&lt;/span&gt;. This ASU and its related amendments (collectively, the &#x201c;Credit Loss Standard&#x201d;) modifies the impairment model to utilize an expected loss methodology in place of the
        incurred loss methodology for financial instruments, including trade receivables, contract assets and off-balance sheet credit exposures. The Credit Loss Standard requires consideration of a broader range of information to estimate expected credit
        losses, including historical information, current economic conditions and a reasonable forecast period. This Credit Loss Standard requires that the statement of operations reflect estimates of expected credit losses for newly recognized financial
        assets as well as changes in the estimate of expected credit losses that have taken place during the period, which may result in earlier recognition of certain losses.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We adopted this standard effective January 1, 2023, and this standard did not have a material impact on the Company&#x2019;s Condensed Consolidated Financial Statements.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We are exposed to credit losses primarily through our sales of products and software to commercial customers which are recorded as Accounts receivable, net on the
        Condensed Consolidated Balance Sheets. Our method for developing our allowance for credit losses involves making informed judgments regarding whether an adjustment is necessary to our historical loss experiences to reflect our expectations around
        current economic conditions and reasonable and supportable forecast periods, where applicable. We utilize current economic market data as well as other internal and external information available to us to inform our decision making in this process.&lt;/div&gt;
</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:CreditLossFinancialInstrumentPolicyTextBlock
      contextRef="c20230101to20230630"
      id="Text_61495a6afcab4de5be0e7b9afd895751">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;In June 2016, the FASB issued ASU 2016-13, &lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;"&gt;Financial Instruments - Credit Losses
          (Topic 326): Measurement of Credit Losses on Financial Instruments&lt;/span&gt;. This ASU and its related amendments (collectively, the &#x201c;Credit Loss Standard&#x201d;) modifies the impairment model to utilize an expected loss methodology in place of the
        incurred loss methodology for financial instruments, including trade receivables, contract assets and off-balance sheet credit exposures. The Credit Loss Standard requires consideration of a broader range of information to estimate expected credit
        losses, including historical information, current economic conditions and a reasonable forecast period. This Credit Loss Standard requires that the statement of operations reflect estimates of expected credit losses for newly recognized financial
        assets as well as changes in the estimate of expected credit losses that have taken place during the period, which may result in earlier recognition of certain losses.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We adopted this standard effective January 1, 2023, and this standard did not have a material impact on the Company&#x2019;s Condensed Consolidated Financial Statements.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We are exposed to credit losses primarily through our sales of products and software to commercial customers which are recorded as Accounts receivable, net on the
        Condensed Consolidated Balance Sheets. Our method for developing our allowance for credit losses involves making informed judgments regarding whether an adjustment is necessary to our historical loss experiences to reflect our expectations around
        current economic conditions and reasonable and supportable forecast periods, where applicable. We utilize current economic market data as well as other internal and external information available to us to inform our decision making in this process.&lt;/div&gt;
</us-gaap:CreditLossFinancialInstrumentPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="c20230101to20230630"
      id="Text_d00dd41dcae2499489ddfa5ebb44e3c4">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3. Revenue&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We account for revenue in accordance with ASC Topic 606: Revenue from Contracts with Customers.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Disaggregation of revenue&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables disaggregate our revenue by market type, as we believe this best depicts how the nature, amount, timing and uncertainty of our revenue and cash
      flows are affected by economic factors.&#160; Sales and usage-based taxes are excluded from revenues.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Food service technology&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3,625&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;270&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3,895&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,281&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;151&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,432&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;POS automation&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,904&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#x2013;&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,904&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,172&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#x2013;&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,172&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Casino and gaming&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;9,475&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2,697&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;12,172&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,929&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,596&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,525&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Transact Services Group&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,721&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;214&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,935&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,345&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;149&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,494&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total net sales&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;16,725&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3,181&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,906&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,727&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,896&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,623&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Six Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Food service technology&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;6,888&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;465&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;7,353&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,227&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;335&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,562&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;POS automation&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;3,686&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;15&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;3,701&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,472&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#x2013;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,472&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Casino and gaming&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;21,044&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;6,939&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;27,983&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;6,717&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;4,570&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;11,287&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;TransAct Services Group&lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;2,704&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;435&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;3,139&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;2,413&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;591&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;3,004&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total net sales&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;34,322&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;7,854&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;42,176&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;16,829&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,496&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;22,325&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Contract balances&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Contract assets consist of unbilled receivables.&#160; Pursuant to the over-time revenue recognition model, revenue may be recognized prior to the customer being invoiced.&#160;
      An unbilled receivable is recorded to reflect revenue that is recognized when such revenue exceeds the amount invoiced to the customer. Unbilled receivables are separated into current and non-current assets and included within &#x201c;Accounts receivable,
      net&#x201d; and &#x201c;Other assets&#x201d; in the Condensed Consolidated Balance Sheets.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Contract liabilities consist of customer pre-payments and deferred revenue.&#160; Customer prepayments are reported as &#x201c;Accrued liabilities&#x201d; in current liabilities in the
      Condensed Consolidated Balance Sheets and represent customer payments made in advance of performance obligations in instances where credit has not been extended and are recognized as revenue when the performance obligation is complete.&#160; Deferred
      revenue is reported separately in current liabilities and non-current liabilities and consists of our extended warranty contracts, technical support for our food service technology terminals, EPICENTRAL maintenance contracts and prepaid software
      subscriptions for our BOHA! software applications, and is recognized as revenue as (or when) we perform under the contract.&#160; &lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;For the &lt;/span&gt;six&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; months ended &lt;/span&gt;June 30, 2023&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;, we recognized revenue of $&lt;/span&gt;1&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt; million related to our contract liabilities at &lt;/span&gt;December 31, 2022&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;.&#160; &lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: #000000;"&gt;Total net contract liabilities consisted of the following:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Unbilled receivables, current&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;261&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;392&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Unbilled receivables, net of current portion&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;153&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;163&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer pre-payments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(24&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(101&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred revenue, current&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(1,222&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,329&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred revenue, net of current portion&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(152&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(143&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total net contract liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(984&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,018&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;
    &#160;
    &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Remaining performance obligations&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Remaining performance obligations represent the transaction price of firm orders for which a good or service has not been delivered to our customer.&#160; As of June 30, 2023, the aggregate amount of transaction prices allocated to remaining performance obligations was $15.7 million.&#160; The Company expects to recognize revenue of $15.4
      million of its remaining performance obligations within the next 12 months following June 30, 2023, $0.2 million within the next &lt;span style="-sec-ix-hidden:Fact_46d6edcfceac48c18fff396979fa22a4"&gt;24 months&lt;/span&gt; following June 30, 2023 and
      the &lt;span style="-sec-ix-hidden:Fact_e8b96d7595e54f3eac451aa3fb8bf1c0"&gt;balance&lt;/span&gt; of these remaining performance obligations recognized within the next &lt;span style="-sec-ix-hidden:Fact_88bacb023a1046b0968f765a62b445b3"&gt;36 months&lt;/span&gt; following June 30, 2023.&lt;/div&gt;
</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_7e819fdbddc043a58a4ae109b1dea57d">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following tables disaggregate our revenue by market type, as we believe this best depicts how the nature, amount, timing and uncertainty of our revenue and cash
      flows are affected by economic factors.&#160; Sales and usage-based taxes are excluded from revenues.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Food service technology&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3,625&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;270&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3,895&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,281&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;151&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,432&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;POS automation&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,904&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&#x2013;&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,904&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,172&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#x2013;&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,172&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Casino and gaming&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;9,475&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2,697&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;12,172&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,929&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,596&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;6,525&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Transact Services Group&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,721&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;214&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,935&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,345&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;149&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,494&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total net sales&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;16,725&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;3,181&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,906&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,727&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,896&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,623&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Six Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="10" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="22" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;United States&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;International&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Total&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Food service technology&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;6,888&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;465&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;7,353&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,227&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;335&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,562&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;POS automation&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;3,686&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;15&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;3,701&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,472&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#x2013;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;2,472&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Casino and gaming&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;21,044&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;6,939&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;27,983&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;6,717&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;4,570&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;11,287&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;
                &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;TransAct Services Group&lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;2,704&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;435&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;3,139&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;2,413&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;591&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;3,004&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 28%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; text-indent: 9pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total net sales&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;34,322&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;7,854&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;42,176&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;16,829&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;5,496&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;22,325&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;
</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_03936a1810e54ec8897d536efbe2742d"
      unitRef="U002">3625000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_3daf8131869f4535a92d0c4e048d7fd8"
      unitRef="U002">270000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember"
      decimals="-3"
      id="Fact_1c86f919c95f48b596dab159c6dd3451"
      unitRef="U002">3895000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_ee7e4e3ff4854951b0edc33a861a9848"
      unitRef="U002">3281000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_cf9f523e62f14f8e9af63c4d96d20fdc"
      unitRef="U002">151000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember"
      decimals="-3"
      id="Fact_95e2321299304f48b96ed21bf5cd7429"
      unitRef="U002">3432000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_63a061f76ad946fe9975c15269d6228c"
      unitRef="U002">1904000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_33b5352eb37b4ce68d9589ffe6ee0b8a"
      unitRef="U002">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember"
      decimals="-3"
      id="Fact_2f3ec274d940491591dcbd4aa0e877a9"
      unitRef="U002">1904000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_9715127896974ee680dd4ec71a41f772"
      unitRef="U002">1172000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_c3cde665822f4b90b00169cdcb39dc6f"
      unitRef="U002">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember"
      decimals="-3"
      id="Fact_acee5c41323e449a81c8bfbbc7dfd384"
      unitRef="U002">1172000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_dd0b56723b03402da5f5723b47fdc6b0"
      unitRef="U002">9475000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_3f041f7bf96d4d2bbc59d270eeef8d74"
      unitRef="U002">2697000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_CasinoAndGamingMember"
      decimals="-3"
      id="Fact_ad5a6422afc64ef99a1531223484e318"
      unitRef="U002">12172000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_c13378eb960c43a28f38aa8c62abd398"
      unitRef="U002">3929000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_09895c3f427543258724feddc44efd8f"
      unitRef="U002">2596000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_CasinoAndGamingMember"
      decimals="-3"
      id="Fact_e3d1476cde104d3aadf0013fea5fa977"
      unitRef="U002">6525000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_3c4fef92588840249c6fb3569f7e22a0"
      unitRef="U002">1721000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_a2ad909fc64b4ab9aab6589402e43359"
      unitRef="U002">214000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_ProductOrServiceAxis_TransactServicesGroupMember"
      decimals="-3"
      id="Fact_f3870d2784d0498eb9d14c5b11b1b0cb"
      unitRef="U002">1935000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_a6ff7b50ed0d4afbb6b22237abcb0501"
      unitRef="U002">1345000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_1a86ea321c394ae8b34390c41bd5d0a9"
      unitRef="U002">149000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_ProductOrServiceAxis_TransactServicesGroupMember"
      decimals="-3"
      id="Fact_ebfbe484980341228fab715a10ff5e59"
      unitRef="U002">1494000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_f1cf44a84ac1412e98445d9bbb145314"
      unitRef="U002">16725000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_09b7b7a0623040889280cedd99af1af5"
      unitRef="U002">3181000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_d7a07dc5a53d43a5a55e6a0feead10be"
      unitRef="U002">19906000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_01c73684b13b47a3adc3491c30a10f63"
      unitRef="U002">9727000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_c49c9a8916a442f2aa008e9c17657be5"
      unitRef="U002">2896000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_43394192644f4e90afdaa33343c5899e"
      unitRef="U002">12623000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_835dce5e02954df487aee753e229c0ee"
      unitRef="U002">6888000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_5943c32b80074c16a2d5d98297ba8e19"
      unitRef="U002">465000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_FoodServiceTechnologyMember"
      decimals="-3"
      id="Fact_c71fde66293c47169fd4ec50b1690169"
      unitRef="U002">7353000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_2c5a49d45e5a471fb8c06fd9d14a2387"
      unitRef="U002">5227000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_8467c9bf0c034eacbab631ed4fb121b9"
      unitRef="U002">335000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_FoodServiceTechnologyMember"
      decimals="-3"
      id="Fact_cf1a94b4e12c410aa2985e396ac6b122"
      unitRef="U002">5562000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_ef5b85f4901b40399792cc352969834d"
      unitRef="U002">3686000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_00c3973a55084a23beaa6115b176bedc"
      unitRef="U002">15000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_PosAutomationAndBankingMember"
      decimals="-3"
      id="Fact_0abe5c23cbaa4869b60014b2c687ca1a"
      unitRef="U002">3701000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_eaae63defb49426ea86badfc7cf07c6a"
      unitRef="U002">2472000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_315cc43209af4f9aa8bae27f193a8568"
      unitRef="U002">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_PosAutomationAndBankingMember"
      decimals="-3"
      id="Fact_e0ca241d6bad48ff815ff025d0a51966"
      unitRef="U002">2472000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_e5cfe8d01244443f81fb6f36e4b7cc2f"
      unitRef="U002">21044000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_9edcf8c530f045ada3a69a5544efe584"
      unitRef="U002">6939000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_CasinoAndGamingMember"
      decimals="-3"
      id="Fact_9c2ff8bbb2414854927c15588d1bc943"
      unitRef="U002">27983000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_823c482bae5f45d7a8e94dbfcfacc386"
      unitRef="U002">6717000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_77371762637e47fb8eb9529b0395e411"
      unitRef="U002">4570000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_CasinoAndGamingMember"
      decimals="-3"
      id="Fact_1c503b5c8c31450aa831f0160c7889b5"
      unitRef="U002">11287000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_82a6107247814b90a2be30b33edc4be2"
      unitRef="U002">2704000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_c83dfd49413b40588190f742bfcecc88"
      unitRef="U002">435000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_ProductOrServiceAxis_TransactServicesGroupMember"
      decimals="-3"
      id="Fact_91a1304d6eec4d0fa893112d2f68d253"
      unitRef="U002">3139000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_690717e472ca407baf1ad284e37f10e4"
      unitRef="U002">2413000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_d890bad984c4425486a65e1dec0628be"
      unitRef="U002">591000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_ProductOrServiceAxis_TransactServicesGroupMember"
      decimals="-3"
      id="Fact_1ec0de331a1942f6a0c3d3ce1277fab9"
      unitRef="U002">3004000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_239d19ff9bae428281d6dd536c4452de"
      unitRef="U002">34322000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_fcf1414cfe9a4564bdbeb04bd7857107"
      unitRef="U002">7854000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_ced230e00e3b42b580ec85b0aa8f007e"
      unitRef="U002">42176000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_934854a4bc3d4ddb8455259a8bc14bdd"
      unitRef="U002">16829000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_6990abcf2edb4f899fae6f4db6ebaddc"
      unitRef="U002">5496000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_8ad6e94fce0e4c8fb952a2b7c51f2259"
      unitRef="U002">22325000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <tact:ContractWithCustomerRevenueRecognized
      contextRef="c20230101to20230630"
      decimals="-6"
      id="Fact_23de521aed8e4329afb83b151ce3e670"
      unitRef="U002">1000000</tact:ContractWithCustomerRevenueRecognized>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_e5537ba137a64ded869295c755d2d206">&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: #000000;"&gt;Total net contract liabilities consisted of the following:&lt;/span&gt;
&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Unbilled receivables, current&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;261&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;392&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Unbilled receivables, net of current portion&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;153&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;163&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Customer pre-payments&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(24&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(101&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred revenue, current&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(1,222&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,329&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred revenue, net of current portion&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(152&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(143&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total net contract liabilities&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;(984&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(1,018&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_ed5339e90cdb4ad9aa8ed0825812b06e"
      unitRef="U002">261000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_ca8eebd2cb8e4187a7592005b431d1f9"
      unitRef="U002">392000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_de8498dfc15e4e7ba82d43ca5066778d"
      unitRef="U002">153000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_28c06d18ecd54e23be9bcf92e0a7463c"
      unitRef="U002">163000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_ea9f42b889b64f888bd60d40d1958d1d"
      unitRef="U002">24000</tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent>
    <tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_c1e5ad76397b4620a393fa35f2a7c3f7"
      unitRef="U002">101000</tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_878fb83023e0449b932f3e2b12ddf9b2"
      unitRef="U002">1222000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_5b226a0e65d944a4a3b81019de97b074"
      unitRef="U002">1329000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20230630"
      decimals="-3"
      id="Fact_5fbb205fe7c54ce98ce0b67a4b43bd9f"
      unitRef="U002">152000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20221231"
      decimals="-3"
      id="Fact_968bfad3f4964dc8b64c65ebcdcae486"
      unitRef="U002">143000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <tact:ContractWithCustomerAssetLiabilityNet
      contextRef="c20230630"
      decimals="-3"
      id="Fact_022e994b865246958b29066e0332d518"
      unitRef="U002">-984000</tact:ContractWithCustomerAssetLiabilityNet>
    <tact:ContractWithCustomerAssetLiabilityNet
      contextRef="c20221231"
      decimals="-3"
      id="Fact_26ea9f409d0a44de9d48fdb64a1bdc80"
      unitRef="U002">-1018000</tact:ContractWithCustomerAssetLiabilityNet>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20230630"
      decimals="-5"
      id="Fact_3d0865e7fab94c8c96dfa5cbc743077b"
      unitRef="U002">15700000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230401Member"
      decimals="-5"
      id="Fact_008da0877d564710916dbf52f6388102"
      unitRef="U002">15400000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230401Member"
      id="Fact_4ea213ae31e24509adf848e80a4a5d2f">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20230630_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20240401Member"
      decimals="-5"
      id="Fact_9010e8ddba1648eba0cfa6719e6f3f8d"
      unitRef="U002">200000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="c20230101to20230630"
      id="Text_dc1dc241cf9846ee9affbbdee7d14acc">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;4. Inventories&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The components of inventories were:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Raw materials and purchased component parts&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;10,338&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,884&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Finished goods&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;5,070&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,144&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;15,408&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,028&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_95c51ea4782e4d95ac5302e787267d16">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The components of inventories were:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Raw materials and purchased component parts&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;10,338&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;8,884&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Finished goods&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;5,070&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;3,144&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;15,408&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;12,028&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves
      contextRef="c20230630"
      decimals="-3"
      id="Fact_8aa8c2c87470477eaeb20a83be73beeb"
      unitRef="U002">10338000</us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves>
    <us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves
      contextRef="c20221231"
      decimals="-3"
      id="Fact_7384093a79ee421b8888409551bfe28a"
      unitRef="U002">8884000</us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="c20230630"
      decimals="-3"
      id="Fact_6c8cb3993fdf4ed8b2ec6b08bd6c12db"
      unitRef="U002">5070000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="c20221231"
      decimals="-3"
      id="Fact_b5a893c9f9a84223a14358f9ce417499"
      unitRef="U002">3144000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="c20230630"
      decimals="-3"
      id="Fact_03b5135e4fdf43208e9ca941e36ca198"
      unitRef="U002">15408000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20221231"
      decimals="-3"
      id="Fact_62b0ace9b50e4855a1e862c00323b1fe"
      unitRef="U002">12028000</us-gaap:InventoryNet>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="c20230101to20230630"
      id="Text_abf55607e77a4f8492f309dc33249658">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;5. Debt&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"&gt;Credit Facility&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;On March 13, 2020, we entered into a credit facility (the &#x201c;Siena Credit Facility&#x201d;) with Siena Lending Group LLC (the &#x201c;Lender&#x201d;).&#160; The Siena Credit Facility provides for a
      revolving credit line of up to $10.0 million and was originally scheduled to expire on March 13, 2023. Borrowings under the Siena Credit
      Facility bear a floating rate of interest equal to the greatest of (i) the prime rate plus 1.75%, (ii) the federal funds rate plus 2.25%, and (iii) 6.50%. The total deferred
      financing costs related to expenses incurred to complete the Siena Credit Facility was $245 thousand, which were reported as &#x201c;Other current
      assets&#x201d; in current assets and &#x201c;Other assets&#x201d; in non-current assets in the Condensed Consolidated Balance Sheets. We also pay a fee of 0.50%
      on unused borrowings under the Siena Credit Facility. Borrowings under the Siena Credit Facility are secured by a lien on substantially all the assets of the Company.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Siena Credit Facility imposes a financial covenant on the Company and borrowings are subject to a borrowing base based on (i) 85% of eligible accounts receivable plus the lesser of (a) $5.0
      million and (b) 50% of eligible raw material and 60% of finished goods inventory. The agreement governing the Siena Credit Facility restricts, among other things, our ability to incur additional indebtedness and create other liens. On July
      21, 2021, the Company entered into an amendment (&#x201c;Siena Credit Facility Amendment No. 1&#x201d;) to the Loan and Security Agreement governing the Siena Credit Facility. Siena Credit Facility Amendment No. 1 changed the financial covenant under the Siena
      Credit Facility from a minimum EBITDA covenant to an excess availability covenant requiring that the Company maintain excess availability of at least $750
      thousand under the Siena Credit Facility, tested as of the end of each calendar month, beginning with the calendar month ended July 31, 2021. From July 31, 2021 through June 30, 2023, we remained in compliance with our excess availability covenant. As of June 30, 2023, we had $2.3 million of outstanding borrowings under the Siena Credit Facility and $5.6 million of net borrowing capacity available under the Siena Credit Facility.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;On July 19, 2022, the Company and the Lender entered into Amendment No. 2 (&#x201c;Siena Credit Facility Amendment No. 2&#x201d;) to the Loan and Security Agreement governing the
      Siena Credit Facility, as amended by Siena Credit Facility Amendment No. 1.&#160; Also on July 19, 2022, the Company and the Lender entered into an Amended and Restated Fee Letter (the &#x201c;Amended Fee Letter&#x201d;) in connection with the Siena Credit Facility
      Amendment No. 2. Siena Credit Facility Amendment No. 2 did not modify the aggregate amount of the revolving commitment or the interest rate applicable to the loans&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The changes to the Siena Credit Facility provided for in Siena Credit Facility Amendment No. 2 include, among other things, the following:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: left; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;(i) The extension of the maturity date from March 13, 2023 to March 13, 2025; and&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; margin-left: 36pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;(ii) The termination of the existing blocked account control agreement and entry into a new &#x201c;springing&#x201d; deposit account control agreement, permitting
      the Company to direct the use of funds in its deposit account until such time as (a) the sum of excess availability under the Siena Credit Facility (as amended) and unrestricted cash is less than $5 million for 3 consecutive business days or (b) an event of
      default occurs and is continuing.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;In addition, the Amended Fee Letter requires the Company, while it retains the ability to direct the use of funds in the deposit account, to maintain outstanding
      borrowings of at least $2,250,000 in principal amount. If the Company does not have the ability to direct the use of funds in the deposit
      account, then the Amended Fee Letter requires the Company to pay interest on at least $2,250,000 principal amount of loans, whether or not
      such amount of loans is actually outstanding.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;On May 1, 2023, the Company and the Lender agreed to a letter amendment to the Loan and Security Agreement governing the Siena Credit Facility.&#160; Section 7.1(m) of the
        Loan and Security Agreement governing the Siena Credit Facility required that any successor to Mr. Shuldman be reasonably acceptable to the Lender, and this amendment confirmed that Mr. Dillon is an acceptable successor to Mr. Shuldman and applied
        the same requirement to any future successor to Mr. Dillon.&lt;/div&gt;
</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_2d781cdae1904f0591f86ca2223c39d4"
      unitRef="U002">10000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_PrimeRateMember"
      decimals="4"
      id="Fact_2f86b97a809f414fa93a29bc12190972"
      unitRef="U004">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_FederalFundsEffectiveSwapRateMember"
      decimals="4"
      id="Fact_a2e0dfdeab6a4021bf6a03ffbd32b731"
      unitRef="U004">0.0225</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="4"
      id="Fact_8af65a20b4164d489e89c5d975c92490"
      unitRef="U004">0.065</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-3"
      id="Fact_ce623a5884024e45bb0209d347a7e918"
      unitRef="U002">245000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="4"
      id="Fact_42dcaa6a0a5541a7b25a319964dd5e3b"
      unitRef="U004">0.005</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <tact:DebtInstrumentFinancialCovenantEligibleAccountsReceivable
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="2"
      id="Fact_ebf7a5711f914aa5b18976e76f68ccc1"
      unitRef="U004">0.85</tact:DebtInstrumentFinancialCovenantEligibleAccountsReceivable>
    <tact:DebtInstrumentFinancialCovenantEligibleInventory
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_701629f9fb59468d84f7f49deabe71e6"
      unitRef="U002">5000000</tact:DebtInstrumentFinancialCovenantEligibleInventory>
    <tact:DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="2"
      id="Fact_edd24acad9bb4885beefa078d042b38b"
      unitRef="U004">0.50</tact:DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage>
    <tact:DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="2"
      id="Fact_0162e143b2d5452798160a9c2f75b036"
      unitRef="U004">0.60</tact:DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="c20210721_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_RangeAxis_MinimumMember"
      decimals="-3"
      id="Fact_d158061ecdf54c629e29a1a024b06447"
      unitRef="U002">750000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:SecuredDebt
      contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_86733bb1889648af85acd5f381526c2e"
      unitRef="U002">2300000</us-gaap:SecuredDebt>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_9ccc2e8792b84b249ecbe4a136ff45ff"
      unitRef="U002">5600000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <tact:DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash
      contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-6"
      id="Fact_de9a7aed7e0647488c4b62ba79411a45"
      unitRef="U002">5000000</tact:DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash>
    <tact:DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash
      contextRef="c20230101to20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      id="Fact_2ee76b3fce844d2c9e58e0c195d95376">P3D</tact:DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash>
    <tact:DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount
      contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="0"
      id="Fact_e0cfd95f0b8f4efdbe45648198dddee7"
      unitRef="U002">2250000</tact:DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount>
    <tact:DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid
      contextRef="c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="0"
      id="Fact_e36f5cad4d6b4ecc8ead3db63bfcf181"
      unitRef="U002">2250000</tact:DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="c20230101to20230630"
      id="Text_a11a5a36bbad4987bd79a609d91d4e3c">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;6. Earnings per share&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table sets forth the reconciliation of basic and diluted weighted average shares outstanding:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Six Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands, except per share data)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income (loss)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;765&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(2,376&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;3,904&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;(6,724&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Shares:&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basic:&#160; Weighted average common shares outstanding&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;9,956&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,910&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;9,943&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;9,898&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Add:&#160; Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;61&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#x2013;&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;73&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#x2013;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; text-indent: -27pt; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Diluted:&#160; Weighted average common and common equivalent shares outstanding&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;10,017&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,910&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;10,016&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;9,898&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income (loss) per common share:&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basic&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;0.08&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(0.24&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;0.39&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;(0.68&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Diluted&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;0.08&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(0.24&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;0.39&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;(0.68&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;The computation of diluted earnings per share excludes the effect of the potential exercise of stock
        awards, including stock options and restricted stock units, when the average market price of the common stock is lower than the exercise price of the related stock award during the period, as the inclusion of these stock awards in the computation
        of diluted earnings would be anti-dilutive.&lt;/span&gt; For the three and six months ended June 30, 2022, there were 1.5 million and 1.2 million, respectively,
      of potentially dilutive shares consisting of stock awards that were excluded from the calculation of earnings per diluted share.&#160; Furthermore, in&#160; periods when a net loss is reported, such as the three and six months ended June 30, 2022, basic and
      diluted net loss per common share are calculated using the same method.&lt;/div&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_13bcc76aace54a8faeb5be1315fa5016">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table sets forth the reconciliation of basic and diluted weighted average shares outstanding:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Six Months Ended&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="14" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(In thousands, except per share data)&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income (loss)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;765&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(2,376&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;3,904&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;(6,724&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Shares:&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basic:&#160; Weighted average common shares outstanding&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;9,956&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,910&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;9,943&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;9,898&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Add:&#160; Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;61&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&#x2013;&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;73&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#x2013;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 4px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; text-indent: -27pt; margin-left: 27pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Diluted:&#160; Weighted average common and common equivalent shares outstanding&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;10,017&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;9,910&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); font-weight: bold;" valign="bottom"&gt;10,016&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" valign="bottom"&gt;9,898&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Net income (loss) per common share:&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basic&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;0.08&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(0.24&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); font-weight: bold;" valign="bottom"&gt;0.39&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;(0.68&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 18pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Diluted&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;0.08&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;(0.24&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; font-weight: bold;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; font-weight: bold;" valign="bottom"&gt;0.39&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;$&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;(0.68&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;)&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_87e678ba88244c65945bd563174ecec0"
      unitRef="U002">765000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_68d8a91815a2410d893d36dc20bb2899"
      unitRef="U002">-2376000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_ce9b473bf22048329a4aad9a9a98cdbf"
      unitRef="U002">3904000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_d785564af5024a22aacbb801c6a5d82a"
      unitRef="U002">-6724000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_a52e03dab40b4e85b0c288babb2cb7cb"
      unitRef="U001">9956000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_1e82823357044b8abf044295b6049eea"
      unitRef="U001">9910000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_ec2cdd972fe04220a6524d3950c4406f"
      unitRef="U001">9943000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_c639949a20794731a03534390c877eff"
      unitRef="U001">9898000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_87434a3ca4a04bf9aa7f80dd541281a0"
      unitRef="U001">61000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_cc8a1479f05a48f3947f659e3eebef9e"
      unitRef="U001">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_29d1559f7e0f4338a93e2bbfbeb78501"
      unitRef="U001">73000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_580cd95a71df44029286cf38bec5c027"
      unitRef="U001">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_46e70e060c664ce5a9b09a3ad6d8db7d"
      unitRef="U001">10017000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_597c5a6571e04474b5036887441dc65c"
      unitRef="U001">9910000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_d3c26e6f13fe4bdda616a5c2d237ebac"
      unitRef="U001">10016000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_15476f178d9c4b559e43e982ccab74b6"
      unitRef="U001">9898000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20230401to20230630"
      decimals="2"
      id="Fact_b7a18f236aa94030bd3e3d024b726ee7"
      unitRef="U003">0.08</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20220401to20220630"
      decimals="2"
      id="Fact_d305fd46e2ff44c19ed0b383bd39d451"
      unitRef="U003">-0.24</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20230101to20230630"
      decimals="2"
      id="Fact_3c760cd078a44efc892fbe222b687d7a"
      unitRef="U003">0.39</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20220101to20220630"
      decimals="2"
      id="Fact_54b2fa64305b4a80a83e61aa586b4957"
      unitRef="U003">-0.68</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20230401to20230630"
      decimals="2"
      id="Fact_03c3d4d632314e2cbe069c27e0ff288c"
      unitRef="U003">0.08</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20220401to20220630"
      decimals="2"
      id="Fact_94adaeed19dc4e889bedb2911d6f4de7"
      unitRef="U003">-0.24</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20230101to20230630"
      decimals="2"
      id="Fact_3f9137ee591e43cfb4b1eb764f9c99c2"
      unitRef="U003">0.39</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20220101to20220630"
      decimals="2"
      id="Fact_7475b41c0be04d098f7af6afca82b87e"
      unitRef="U003">-0.68</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20220401to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="-5"
      id="Fact_33c82696f2914c48a4786b71b0d70b98"
      unitRef="U001">1500000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20220101to20220630_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="-5"
      id="Fact_093753a8fdeb4cc2a96286e7318a13a0"
      unitRef="U001">1200000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="c20230101to20230630"
      id="Text_b9e09ee9f84a4b47b4a233230bf89b3b">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;7. Leases&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We account for leases in accordance with ASC Topic 842: Leases.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We enter into lease agreements for the use of real estate space and certain equipment under operating leases and we have no financing leases. Our leases are included in
      &#x201c;Right-of-use-assets&#x201d; and &#x201c;Lease liabilities&#x201d; in our Condensed Consolidated Balance Sheets.&#160; Our leases have various lease terms, some of which include options to extend. Lease expense is recognized on a straight-line basis over the lease term.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating lease expense for the six months ended June 30, 2023
      and 2022 was $483
      thousand and $487 thousand, respectively, and is reported as &#x201c;Cost of sales&#x201d;, &#x201c;Engineering, design and product development expense&#x201d;,
      &#x201c;Selling and marketing expense&#x201d;, and &#x201c;General and administrative expense&#x201d; in the Condensed Consolidated Statements of Operations. Operating lease expenses include short-term lease costs, which were immaterial during the periods presented.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following information represents supplemental disclosure for the statement of cash flows related to operating leases (in thousands):&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Six Months Ended&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating cash outflows from leases&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;504&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;456&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following summarizes additional information related to our leases as of June 30, 2023 and December 31, 2022:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted average remaining lease term (in years)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2.3&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.7&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted average discount rate&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;4.4&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;%&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4.5&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The maturity of the Company&#x2019;s operating lease liabilities as of June 30, 2023 and December 31, 2022 were as follows (in thousands):&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;469&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;972&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2024&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,024&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2025&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;712&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;710&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2026&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;22&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;20&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total undiscounted lease payments&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2,227&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,724&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Less imputed interest&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;113&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;166&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total lease liabilities&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2,114&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,558&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseExpense
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_657d88f0f3b6427dbefddebe7f90f04c"
      unitRef="U002">483000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_d9af7d448a8b451ab9bba772016bc857"
      unitRef="U002">487000</us-gaap:OperatingLeaseExpense>
    <tact:LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_1f45e10836124f919d29e35a5000c1c3">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following information represents supplemental disclosure for the statement of cash flows related to operating leases (in thousands):&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Six Months Ended&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30,&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Operating cash outflows from leases&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;504&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;456&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</tact:LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="c20230101to20230630"
      decimals="-3"
      id="Fact_34a8ccf44ea741cd8b5c8db642255abf"
      unitRef="U002">504000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="c20220101to20220630"
      decimals="-3"
      id="Fact_e89db6337308454c91aace02b71808fc"
      unitRef="U002">456000</us-gaap:OperatingLeasePayments>
    <tact:LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_eb794ce20ce74cf7b3c2d9408421fb1a">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following summarizes additional information related to our leases as of June 30, 2023 and December 31, 2022:&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted average remaining lease term (in years)&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2.3&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2.7&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Weighted average discount rate&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;4.4&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;%&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;4.5&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;%&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</tact:LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20230630"
      id="Fact_6f3d4c96c6ad4f408bf380a6fefb142e">P2Y3M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20221231"
      id="Fact_a027b576b97d42b8989101ec16b95168">P2Y8M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="c20230630"
      decimals="3"
      id="Fact_577831bbd3c044a0b350f3794b987471"
      unitRef="U004">0.044</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="c20221231"
      decimals="3"
      id="Fact_ba061cad311d45c884c6cda7a5615652"
      unitRef="U004">0.045</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="c20230101to20230630"
      id="Text_19becef6126e41c09c60350897607a13">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The maturity of the Company&#x2019;s operating lease liabilities as of June 30, 2023 and December 31, 2022 were as follows (in thousands):&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;June 30, 2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;December 31, 2022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2023&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;469&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;972&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2024&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;1,024&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,022&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2025&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;712&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;710&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2026&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;22&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;20&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total undiscounted lease payments&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2,227&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,724&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Less imputed interest&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;113&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;166&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="text-align: left; margin-left: 13.45pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Total lease liabilities&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div&gt;
              &lt;div style="font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2,114&lt;/div&gt;
            &lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" valign="bottom"&gt;
            &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;2,558&lt;/div&gt;
          &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="c20230630"
      decimals="-3"
      id="Fact_68fa07b0436f400bb7a4bee0fb1553cd"
      unitRef="U002">469000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="c20221231"
      decimals="-3"
      id="Fact_0658b8b2ad82402c8a22aee66f10356b"
      unitRef="U002">972000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="c20230630"
      decimals="-3"
      id="Fact_b4d8e60d34c34a2c820d4928651b1baa"
      unitRef="U002">1024000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="c20221231"
      decimals="-3"
      id="Fact_c745f39960e04296998d78ddd8637b7b"
      unitRef="U002">1022000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="c20230630"
      decimals="-3"
      id="Fact_4b4b74753b4c41b1ba521f64a3104a78"
      unitRef="U002">712000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="c20221231"
      decimals="-3"
      id="Fact_57dca507261c480aae5985e8fc6eeb54"
      unitRef="U002">710000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="c20230630"
      decimals="-3"
      id="Fact_f39cae40759f411e95b46f496bb32cef"
      unitRef="U002">22000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="c20221231"
      decimals="-3"
      id="Fact_60e31a8e47ce4349bbac017774852313"
      unitRef="U002">20000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="c20230630"
      decimals="-3"
      id="Fact_87526a89def14f7496bc7757e2356039"
      unitRef="U002">2227000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="c20221231"
      decimals="-3"
      id="Fact_2802193a3c1e4a9a869d3adf251c054a"
      unitRef="U002">2724000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="c20230630"
      decimals="-3"
      id="Fact_3a56a60de91e4d4ea94bb4279be14e32"
      unitRef="U002">113000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="c20221231"
      decimals="-3"
      id="Fact_96de8e571ae1409783f7c9fe45e35fc2"
      unitRef="U002">166000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="c20230630"
      decimals="-3"
      id="Fact_4879adcde382427f9ed605bfa0205a6e"
      unitRef="U002">2114000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="c20221231"
      decimals="-3"
      id="Fact_903074fc40594f5f8f07a2cd5fed2a90"
      unitRef="U002">2558000</us-gaap:OperatingLeaseLiability>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="c20230101to20230630"
      id="Text_30e5594b386d46d290be86b035f7ff1f">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;8. Income taxes&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We recorde&lt;span style="font-size: 10pt;"&gt;d income tax expense in the second
        quarter of 2023 of $391
        thousand at an effective tax rate of 33.8% compared to an income tax benefit in the second quarter of 2022 of $870 thousand at an effective tax rate of (26.8%).&#160;














        For the six months ended June 30, 2023,
        we recorded income tax expense of $1.0 million at an effective tax rate of &lt;span style="font-family: 'Times New Roman';"&gt;20.7%&lt;/span&gt;, compared to an income tax benefit for the six months ended June 30, 2022 of $2.2 million at an effective tax rate of &lt;span style="font-family: 'Times New Roman';"&gt;(24.9%)&lt;/span&gt;.&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/span&gt; &lt;/div&gt;

&lt;div&gt;&lt;span style="font-size: 10pt;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We are subject to U.S. federal income tax, as well as income tax in certain U.S. state and foreign jurisdictions.&#160; We have substantially concluded all U.S. federal,
      state and local income tax, and foreign tax regulatory examination matters through 2018.&#160; However, our federal tax returns for the years 2019 through 2022 remain open to examination. Various U.S. state and foreign tax jurisdiction tax years remain
      open to examination as well, but we believe that any additional assessment would be immaterial to the Condensed Consolidated Financial Statements. The Company&#160;maintains a valuation allowance against certain deferred tax assets where realization is
      not certain.&lt;/div&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20230401to20230630"
      decimals="-3"
      id="Fact_03f2e012c6a544f29a77b3e23708cb9a"
      unitRef="U002">391000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20230401to20230630"
      decimals="3"
      id="Fact_0fbf55d40fa647a08f80b3052f344362"
      unitRef="U004">0.338</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20220401to20220630"
      decimals="-3"
      id="Fact_0fb2ecac673640e8b5ad8b2d2b53b8f0"
      unitRef="U002">-870000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20220401to20220630"
      decimals="3"
      id="Fact_10a1b0e1395d42d18ec65734bd5ebd83"
      unitRef="U004">-0.268</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20230101to20230630"
      decimals="-5"
      id="Fact_1d8a23dbc13546bea86cb54669f94b58"
      unitRef="U002">1000000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20230101to20230630"
      decimals="3"
      id="Fact_6c9f56ca1f7b487fb64418225484ab2c"
      unitRef="U004">0.207</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20220101to20220630"
      decimals="-5"
      id="Fact_a55a0425d6c44e0eaf5c7c7b349f8d0e"
      unitRef="U002">-2200000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20220101to20220630"
      decimals="3"
      id="Fact_f28e1d7695b24c57aca8fd29ace15077"
      unitRef="U004">-0.249</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="c20230101to20230630"
      id="Text_e129fbce56dc49a4a3b033f7079d8e84">
&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;9. Subsequent events&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
    &lt;/div&gt;

&lt;div style="text-align: justify; margin-top: 3pt; margin-bottom: 3pt; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Company has evaluated all events or transactions that occurred up to the date the Condensed Consolidated Financial Statements
        were available to be issued.&#160; Based upon this review, the Company did not identify any subsequent events that would have required adjustment or disclosure in the Condensed Consolidated Financial Statements.&lt;/div&gt;
</us-gaap:SubsequentEventsTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>43
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
MI&)XZ(%7G2!,YF3R&C_+R(J^QV!8,_D<(S>Q*C<Q/.1L&Y/<OO@+GLQ%[7O
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
M:*PRZF:&A2!($X#/%T+HAXXI-=K2,OX#4$L#!!0    ( (6$"E>F ;$^+@8
M 'X>   8    >&PO=V]R:W-H965T<R]S:&5E=#0N>&ULK5E=<Z,V%/TK&G>G
MLSL3QY+X3AW/)(9MT^DFF76V?>CT@=BRS2Q&7B0GZ;^OP 2P=*'9EI<8R+E'
M.M+5U0%-GWG^56P9D^AEEV;B<K25<G\QF8CEENUB<<[W+%/_6?-\%TMUFV\F
M8I^S>%4&[=()Q=B=[.(D&\VFY;/[?#;E!YDF&;O/D3CL=G'^]S5+^?/EB(Q>
M'WQ.-EM9/)C,IOMXPQ9,?MG?Y^IN4K.LDAW+1,(SE+/UY>B*7$34*0)*Q.\)
M>Q:M:U1(>>3\:W%SL[H<X:)'+&5+65#$ZN>)S5F:%DRJ']\JTE'=9A'8OGYE
M_UB*5V(>8\'F//TC6<GMY<@?H15;QX=4?N;/O[!*4-G!)4]%^1<]5U@\0LN#
MD'Q7!:L>[)+L^!N_5 /1"E \< "M J@>8'<$6%6 ]=86["K ?FL+3A502I\<
MM9<#%\8RGDUS_HSR JW8BHMR],MH-5Y)5B3*0N;JOXF*D[/YW6T8W2ZB$*FK
MQ=UO-^'5@[I9/*B?3]'MPP+=?41W]]'GJX<;!4!C]&41HO?O/B"QC7,F4)*A
MART_B#A;B3/T[N1^.I&JBT5#DV75G>MC=VA'=RSTB6=R*U"4K=@*B _[X]V>
M^(D:FGI\Z.OX7-->PE\/V3FR\!FBF%I ?^9O#Z>0G/_7>O2?6S\9#*M.%JOD
ML[J3Y0TI\N?5HY"YJ@!_0?-_;,&&6RC*XH78QTMV.5)U3[#\B8UF/_Y 7/P3
M-/A#DH5#DD4#D9U,DUU/D]W'/KM5^XN(4P:NOV.H6X86N\C3C 0!=J>3I_;
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
MNI#$9R0]# X+ECRBOC=@/;(ZG;9LX?=L@S8K\0K2ZH5RXF06SYF*=S70'++
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
M5'ZM%A^";?A5UL(&T"5_7"N8[&@!?E]:<%QZH .Z=YL7_P-02P,$%     @
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
M/U V ,_74IJ]81.,[VG^#U!+ P04    " "%A I7.TS<F!L(   (%@  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6RM6&USV[@1_JY?@=$E-_:,2[U9
M3IK8GK&3RS4WN5XFN?8^=/H!(B$)#0CP %"V_WV?79 T)<N*DW;&ED1B=['[
M8/?9)<]OG/\2UDI%<5L:&RZ&ZQBK5Z-1R->JE"%SE;)863I?RHA+OQJ%RBM9
ML%)I1M/Q^&Q42FV'E^=\[Z._/'=U--JJCUZ$NBREO[M6QMU<#"?#]L8GO5I'
MNC&Z/*_D2GU6\1_51X^K46>ET*6R03LKO%I>#*\FKZY/29X%_JG53>C]%A3)
MPKDO=/&^N!B.R2%E5![)@L371KU1QI AN/%G8W/8;4F*_=^M]7<<.V)9R*#>
M./.'+N+Z8OAR* JUE+6)G]S-WU03SYSLY<X$_A0W279R-A1Y':(K&V5X4&J;
MON5M@T-/X>7X$85IHS!EO]-&[.5;&>7EN7<WPI,TK-$/#I6UX9RV="B?H\>J
MAEZ\?*L6\7P488FN1WFC=9VTIH]HG8E?G8WK('ZRA2JV]4?PH'-CVKIQ/3UH
M\)?:9F(V/A'3\71VP-ZL"VO&]F8'PA+_NEJ$Z''N_]X783)PNM\ U<*K4,E<
M70R1[$'YC1I>_OC#Y&S\^H![IYU[IX>L/XKZ8:UY)CBN-UX5.HIW,M=&QSOQ
MFQ6_2I^OQ63&  +&&R64C0J"0MOHA!1Y4EJV2D=QK<2//[R<3L>O/VMEY:Y9
M7IN\/D9"QK5((A^4+;1=B9^]JROQX<.;+3.TJGRKEXG?L;37M*B\V^A"!0%6
M$7+@U<:9#1ENO*3(A5L*; +GGTW&V1C);PS7L2W$C0S">;W25AIS)XBJBMH@
M6$BKVTI[:.^ ,LO$M?,X)VP31$V>BKCCX*!S<*$D'!-+XV0DO[R,[)!F4$,4
MZL]:&MJ.;*Q AY'N0N)('_.]RH.[DEYEZB FV8OY\Q,L-^M+!0]@8@E70D]N
MFDU)CJ*$+(3/LOGX>0(SN@@-<([R\'>P1/@V9]A<B#"B#,RT(( X ;"V>4W"
M=#-W9644-MJ-^_Y@"-AGT],Y1%P=X 12::V!X@W"Q@:5\[0#I)HS_PVVO. ]
M;!S($%0,309@[W9!I 6.:DOQ@8)U]B\[2KA+#K]Q.#/$5-"OX(PN.-AK:0 "
MXB$*#)GX0PEI@A.5O*,#5'QL8\)P@)2H;4T6%E_+A Z1)V3-/7H2& 4%]VD+
MVMY C#(QU& B::/F=,4'&VGB@W\IOK*2]NY0V>BR<G2HB"L=/;(A=QN( BUG
M^V88ZEZ8[%J]^ ^:H6 ^Z-:XJ?%'038H?U_.GY-7RJ#"%@:.YKFK+6=8KO1&
MTCU.5MK0*(3A.?7EL7@VS\:#?JD>+8X%P-^RY^4->A@JB0(@H;,D@*@T6EDA
M5LX5=/ (+3K?8")19JJDQ%@A9F_)]\?/@JK4ZSP&U%+I(.HXX>*:X#@1KD;R
M+9(H\. R$;* "3@.KS2.>H'\LHB.7<RYQALK=*[(-1#O+[6Y&TPG3#'X[)_
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
MM4 P: U-:EN"I66-N9(Y%YSY,Z,VKN1Y#DP64'#16"Q@YRN=.NP>-1W<%MT
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
MR6@Y'PC;W 2;A3=5N'U=&8^[7'C-<7DFRPKXOC;&=PO>H+^.G_T+4$L#!!0
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
M +_7#D;;W_ &ZV_>BW\!4$L#!!0    ( (6$"E<ZBL[M" 0  'X(   9
M>&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;(U6VVX;-Q!]]U<,-D"0 (I7%\<Q
M'$F Y-:(@QHQHJ9Y*/I [XZTC+GDEN1*=K\^9[B2;+>VT1<M+W,Y9X8SH_'&
M^9M0,4>ZK8T-DZR*L3G-\U!47*MPZ!JVN%DZ7ZN(K5_EH?&LRJ14FWS8[Q_G
MM=(VFX[3V96?CET;C;9\Y2FT=:W\W9R-VTRR0;8[^*I7592#?#INU(H7'+\U
M5QZ[?&^EU#7;H)TES\M)-AN<SH]$/@G\H7D3'JQ)F%P[=R.;BW*2]040&RZB
M6%#XK/F,C1%#@/'WUF:V=RF*#]<[Z^>).[A<J\!GSGS79:PFV4E&)2]5:^)7
MM_G$6S[OQ5[A3$B_M.EDCT89%6V(KMXJ T&M;?=5M]LX/% XZ3^C,-PJ#!/N
MSE%"^8N*:CKV;D->I&%-%HEJT@8X;24IB^AQJZ$7IPN]LGJI"V4CS8K"M39J
MNZ(K9W2A.=";W>KM.(_P)UIYL;4][VP/G[%]3)?.QBK0K[;D\K%^#IQ[L,,=
MV/GP18.?6WM(HWZ/AOWAZ 5[HSWY4;(W^A_DU3WY9D?^S]EUB!X/YZ^GR'>V
MCYZV+<5T&AI5\"1#M03V:\ZFKU\-COL?7T!^M$=^])+UZ9GG4D?ZS87 X2EP
M+ZM?6$(L&7$<'/<H5DSGL\6<= @MES1;?$LW[P:C'IUKJVRAE:$+BV"T*,@8
MZ!T]0G#PYG?7Z()&P^.WIW3)*K2>19+<\K$DH1*?-OF=296NB0 0*QTH1&5+
MY4OBY9)3[=)G95MT#AIT+Z!'D/B7<*E+LBY2I2"O4"F1O7C2-7(1Q;NP/7/8
MVKO7KTZ&@P\? _9XH3; -58!Z2^5X+@'NH@X2#@/$U#/Q+>-$XWHJ.@8FHYA
MXS7ZFS9W<.5=NZK(M6B#R@C[):Y=V18@+."#6\:-6!,KKJ[9)W==X;,/M*ET
M425_G@OG44>DPJY2@QRR7JMKPSVRO.-W\ R?N3+@P[20=@$F7X"KYEBYDM#>
MT<S6:-*-E( @5@8=.\G+Y6..VJZ=66-1JQN1UU;F US\:,M5ET_/*R1$+C<5
M?# ,H@F7/T MO0QDS0)]"))1T!>72&5T'@5IDB.),=+'P!!$! U;NGD2E:L"
M64%K1R@19UL>%*WW8AJ1LJ[&>\07H#L11!M3*S@KT>J"WS:-\S'M 9\+%2*)
M0U>&GJ!&U%73H!F(2$I\&[71_S#]QQ,R?H/X(\Y*$K3!F)&O2\2UQ2NT("5>
M^7:[Z6*FNN&T5MHD(*#9)K+==>):<J'3%-Q'NWOU>$H2P,.G&DK^8";@):W2
MY N4WDTW'O:G^^$ZZV;*O7@WF2^57VF$T/ 2JOW##^\S\MVTZS;1-6G"7+N(
M9YN6%?X@L!<!W"^=B[N-.-C_Y9C^!%!+ P04    " "%A I7SH5U9<0$  #Y
M"@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6S-5DMSVS80OO-78!1/
M1IYA+ )\.[9F_$C:=)K6$SGMH=,#1"XE3$A !4#+_O==@)*LU+)R[07 @KO?
M?HM=+'&Q5OJ;60)8\MBUTER.EM:NSB<34RVAX^9,K4#BET;ICEL4]6)B5AIX
M[8VZ=L*B*)MT7,C1],+OW>GIA>IM*R3<:6+ZKN/ZZ1I:M;X<T=%VXXM8+*W;
MF$PO5GP!,[!?5W<:I<D.I18=2".4)!J:R]$5/;].G;Y7^$/ VNRMB8MDKM0W
M)WRJ+T>1(P0M5-8A<)P>X ;:U@$AC7\VF*.=2V>XO]ZB?_2Q8RQS;N!&M7^*
MVBXO1\6(U-#POK5?U/IGV,3C"5:J-7XDZT&792-2]<:J;F.,##HAAYD_;LYA
MSZ"(7C%@&P/F>0^./,M;;OGT0JLUT4X;T=S"A^JMD9R0+BDSJ_&K0#L[_0(/
M('L@XWL^;\&<7DPLHKIODVJ#<#T@L%<0,O)92;LTY(.LH?[>?H)L=I38EM(U
M.PKX2R_/2!R%A$4L/H(7[T*,/5[\@Q#_NIH;J[$,_CX4Y("1',9P5^/<K'@%
MER.L?0/Z 4;3MV]H%KT_PC#9,4R.H4]OA>&+A88%]Y6J&K+A?(CH4:C#1.^7
M0!K5X@44<D&LSS2IGYT"4;W&*S:<T_P)"TQ_PX9@GU80$F[(&G>A%:A [%(8
M%(S%VE^)RAJRQ& M>I#<]MKI=ZJ7-B16=,X=ES7I907:8HNP3RZZ?6_N<\7-
M,FB0GB%<XU;3X)V%VC&!2DG5B8HTF#BES1F9<<?>HV( \,[=R1J#>H3!&AZK
MML=*)(U6W=:-.0ONEQK@NUH-L-+ 55K@*LT-+!A_DAB,0FA9F]/@JQ2.R,SB
M(9G@D[2@I4\2;X-[97'\L<9'I6KB,B$J/#ZHEE*U:O$4G 1QF+$49Y9'7BK*
MU,^LH#C3E'HIB5EP]_N,\!Z;@8<.:%A&2?#V3<$H?;^1:$ASMK?GI!MNA%3^
ML!;<92,HPR1/ Q9F91Y0YI7BL&0E;J5E%F1ABHSN-9<&SYO,!M:&_*15OT+0
MG-& 4>>LC%,<XP3'I,154B9#O$1BY1B7)!=#AB9#4'0(JD2R&2Y*_)"[V#%J
M)R.9#),P$X__HQR1$Y*%15'@G&0ICGD8IS'.:<A8CG,<IUY*L__FB&!RBXS0
M%!=Y1 G#@V=DDYY!>ID>PF@8)0DZ+>.2L#PLBQB%G.8D"=,\(I1B<>1#@JY>
M) AA\R@A2>R<4H<0)C0F:4E1CJ(7"7(!)&',F(^L2!,7IRN*#!>8NH*5/KJD
M=!N,H6I*CO2[=-?OTJ/][C<D<(-)=LV8_"KX7+3""C"'VMUQI.> JBU>^XSG
M-HTP+O?8=>Q^%SS?%9;_S02W4$$W!TUBZG<.5!FBMHBD45,\^!X:XA]::Y#6
MU7'F;VO)7M%T')'$QH"LE!YN<AKC)8F#&_^K1__8M=^M^!.^>ZP)QBP)3H,Q
MC2A.M]  &M?;GO;L?8Q5@8R=)J:H/*C[BO\Q30?#),;I^'%B?..R<(Q.G*>(
M%L'IH6J8[#U',*2%?W2Y9.!O87B9['9W[[JKX3GSK#X\"C]SO1#2D!8:-(W.
M<BP'/3RT!L&JE7_<S)7%\_/+);Y-03L%_-XH9;>"<[![[4[_!5!+ P04
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
M-!AA&^KF$FXF5E7^XILKB]>H?USC=PMH9X#[2Z7L;N("=%]"LQ]02P,$%
M  @ A80*5V&]C^"S @  BP@  !D   !X;"]W;W)K<VAE971S+W-H965T,C,N
M>&ULK5;);MLP$/V5@1H4*=!:B[<@E07$=M/V8""(D?80]$!+8YL(%Y6D[>3O
M2U*V:A>*@!2^2%SFO9DW7(;I3JHGO48T\,R9T*-@;4QY'88Z7R,GNB-+%'9F
M*14GQG;5*M2E0E)X$&=A$D6#D!,J@BSU8W<J2^7&,"KP3H'><$[4RQB9W(V"
M.#@,W-/5VKB!,$M+LL(YFH?R3ME>6+,4E*/05 I0N!P%-_'U9.CLO<$/BCM]
MU :G9"'ED^M\+T9!Y )"AKEQ#,3^MCA!QAR1#>/WGC.H73K@<?O ?NNU6RT+
MHG$BV4]:F/4HN J@P"79,',O=]]PKZ?O^'+)M/_"KK+M#P+(-]I(O@?;"#@5
MU9\\[_-P!(A? R1[0/(OH/<*H+L'=+W0*C(O:TH,R5(E=Z"<M65S#9\;C[9J
MJ'"K.#?*SE*+,]F8:*I!+L'N 8W"$)_<RRD:0IG^ )_@83Z%RXL/< %4P(PR
M9@UT&AKKW%&$^=[1N'*4O.(H3F FA5EK^"(*+$X)0AMU'7IR"'V<M#).,>]
M-_X(293$#0%-VN$SHCH0=ST\:@FG6V>RZ_FZ;\KDX\U"&V4WZZ^FE%6,O69&
M=X"O=4ER' 6>4VTQR-Z_BP?1YR:Y9R([$=^KQ??:V+.O]KZ I9(<D)=,OB#:
M(VYL%EP.<H4%-4WZ*](K3^KNFVT6=_IIN#V6U>KX/V7U:UG]5EESBD(0F'@!
M<$MRRJAY@<<9\@6JQB5M)7SKDIZ)[$3[H-8^./M^'IQ3_)G(3L0/:_'#UH6?
MD6?*-QP64EDD%2O(B75F%[])=BO76V579(/C,Q'51Z(2$Q[=]QS5RI=!#;G<
M"%-=_?5H76EO?($)_YI79=K>@BLJ-#!<6FC4&=HMIZK25W6,+'WU6$AC:Y%O
MKNUK 94SL/-+*<VAXQS4[X_L#U!+ P04    " "%A I7D:(N"68'   C0@
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
M0( T4;4,'M >W/1K:\V)@^U>^/?83IIF4II.9867Q+?O^!S[6)\=K+EXD@L
MA38Q2^3 62B5]EU71@N(B6SP%!+=,^,B)DI7Q=R5J0 RM4$Q<WW/Z[@QH8D3
M!K9M*,* +Q6C"0P%DLLX)N+W#3"^'CC8V3:,Z'RA3(,;!BF9PQC40SH4NN86
M*%,:0R(I3Y" V<"YQOT;W#8!=L1W"FM9*B,C9<+YDZE\G@X<SS "!I$R$$3_
M5G +C!DDS>-7#NH4<YK <GF+_M&*UV(F1,(M9S_H5"T&3L]!4YB1)5,COOX$
MN2!+,.),VB]:YV,]!T5+J7B<!VL&,4VR/]GD"U$*\/T] 7X>X%O>V426Y1U1
M) P$7R-A1FLT4[!2;;0F1Q.S*V,E="_5<2H<P0J2)5R@$9@]I,D<#4'8W4XB
M0%\GC,Z)63^)SN] $<KD.W2&:(+N*6.F/7"5YF'0W"B?\R:;T]\SYY=ETD!-
M[P+YGM]$#^,[='[V[CF,JV446OQ"BV]QFWNU;"6D)0F\).'G]40JH9WP6,4Z
M0V]5HYOCT9<IB6#@:/]+$"MPPK=O<,=[7\.]67!OUJ$?YEY%.(/L64AS_%8A
M;C>Z@;NJ(-(JB+0.$'FA(2[0ATVJSQ9,T3<:FW%\AL:Z2\Y(E T8*R(4TKX$
MO?(;*A_[=LLOO=:EAZL$U5([<@?:A?#V2=W3/@'W3L&]\_KNZ52YIU7MGFY!
MI%M+I+"$*BPAGUE"\Z-\6D6G'AC[*.:)6LB:U>H5)'O_V>*M_1:OI7:D3:X*
MX5<GM?C5";AC;Y>IO-<W>8Y9=KG7\*M-CDM)$Y_*Y@>07^)SO$N(N#9G_0.G
MM_<[O9[;L7;9)53</*G9<6W"/I;^+@WC0WGX&+<?D4!1'=U=\L2U^>VO3D0]
M<NV)<$LW7_.*N"=B3O76,IAI,*_1U=@BNYAG%<53>QF><*6OUK:XT(\9$&:
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
M4#H,+NUA6#JHT,TB=D6<#SE<S"C9 RJM!9I\4.PK;\$7SJ10GCD57['PXXL
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
M$94#Q/L5(?QP(Q,T9XWA_U!+ P04    " "%A I71M%VKL("  #."   &0
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
M$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:<Z10J[4+!XUA]) 1-MC0[!:+#Y
M+AEFM[UD%J=SI%>(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*
M(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'<?VD-/IKV,BM'I;Z/EQ:%0*CMQC
M)8QQ8K3^-8+)#^Q^ %!+ P04    " "%A I7-"/1L1T#  #"%   #P   'AL
M+W=O<FMB;V]K+GAM;,6876_:,!2&_XJ5JTZ:!@F4?JA4HH1M2(Q63=7;R20'
ML.K8S';:KK]^QTEIG36S=F-QE?A#YHE#GM?VQ9-4#RLI'\ASR84>1UMC=N>]
MGLZW4%+]1>Y 8,M:JI(:+*I-3^\4T$)O 4S)>TF_/^J5E(GH\F(_UHWJN05I
M(#=,"JRT%?<,GO1[NRV21Z;9BG%F?H^C^IY#1$HF6,E>H!A'_8CHK7SZ+A5[
MD<)0GN5*<CZ.XJ;A'I1A^8?JS$+>T96N:PQ=W5($&4>C/@ZX9DJ;ND<]/D7&
M1\#.3:DR\BOC!E1*#7Q3LMHQL;'#X%/TG,>HYV%_;2;Q7/W/-,KUFN60RKPJ
M09AF'A5P"RCTENUT1 0M81SMNQ J"C(3!B>)S$4S%/:U3XH_/2^:IS:(Z\RA
M.F?8H.9%#1X.<GJ]3&?+;)82O,NN%_-T<H>%J\EBLIS.B .9>""3 T+^3!S(
M@0=R<!#([ XO/V9+!W+H@1P>$+(UD\<>R.-#0@X<R)$'<G1(R*$#>>*!/ D+
M>44UTT2N":I?8]>_Q7/J03L-BY:QC6#8EUI!YKFL4)!B0W:2LYR!=B#//)!G
M82%OX1%$!:ZJ^SY7]\/BS 7B&,S2UOS$WO@(G!\IK(S+XDN).'!,S*@2^!_2
M9 <*D:AJO3A?-,2!LV$!5+??F2\#XL A,!>Y+ &75<]M)I_RX\#.SZJ5AE^5
M72[9;\ZTP'R:CP-[OE.AY.CFHZ=BG^CCP*9W=3IYUVF#V0KVV"?].+#U7X5*
MCG"]SD%_<KE\GH\#B]XQ:Q=;XK-^$MCZ'[76B>A+@21P"C1^Z\3R;AL"!\(_
MOMT4#&6\C>E+AR1P.KQ^%)])RC3=;!1L&E $MTTNIB\VDL"Q\88YQ9V\PFTW
MN:*<BMR^>)Q2%].7)$G@)'G#O 5[O%%;$%0]%+*V=K2^7$D"YTK+.%W_2%^:
M)('3Q*[JNJE\X9$$#H\N$78Q^H(D"1PD>Q-V< U\(3((OG5X7_-UT_GR8] <
MG^W/S I8,P'%$D?66)]3GM\H8B_-'F!X;,-\77$^Q;IKL9"TV!_![8\/+_\
M4$L#!!0    ( (6$"E>/>K1A70$  "03   :    >&PO7W)E;',O=V]R:V)O
M;VLN>&UL+G)E;'/-V,V.@C 4AN%;(;T RSE5U(FXFHW;B3= L("1O]!.1N]^
M""[P([.8C>E9D99P^H;%$\+AR]:9OW:MJZZ]B^Y-W;I45=[W'UJ[O+)-YE9=
M;]OQ3M$-3>;'Y5#J/LMO66DUQW&BA]<9ZGAXG1F='[W]S\2N**ZY_>SR[\:V
M_H_!^J<;;JZRUJOHG VE]:G2]WK>=GJZT&J<K*+3)57#Z4)*APYB".+P00:"
M3/B@-02MPP=M(&@3/BB!H"1\T!:"MN&#=A"T"Q^TAZ!]^""*4<980-(":P%:
M$W)- KPF!)L$B$U(-@DPFQ!M$J V(=LDP&U"N$F W(1TDP"["?$F 7HSZLT"
M]&;4FP7HS8N/;0%Z,^K- O1FU)L%Z,VH-PO0FU%O%J WH]XL0&]&O5F WHQZ
MLP"]#>IM!.AM4&_S3KV=?]36S3W/-9[_3JK]^*R=CY^6S\W%2YAPUO!3[/@+
M4$L#!!0    ( (6$"E?O6\H)A@$  -43   3    6T-O;G1E;G1?5'EP97-=
M+GAM;,V8S4[#,!"$7R7*%36N72@_:GL!KM #+V"231/5L2W;+>W;XZ0_$JA$
M5$5B+K$2[\Z,O=)WR.1M:\DGFT9I/TVK$.P#8SZOJ)$^,Y9TW"F-:V2(KV[!
MK,R7<D%,#(=CEAL=2(=!:#72V>2)2KE2(7G>Q,^^-GJ:.E(^31YWA:W7-)76
MJCJ7(>ZSM2Z^N0SV#EGL[&I\55M_%0M2=M*AW?G98-_WNB;GZH*2N73A13:Q
MBFT4\V&KR&?]$B<RFK*L<RI,OFIB2^:M(UGXBB@T*MN)7O4[AWC#M'ORB_T[
MF3[#6#EWQOHX,4?GVQU&TG8/;!0B%^K^(QX=H_3%YZ-VV@45O_2.U_MAW+*;
MAV?=<OD=?YWQ4?_,' (DQP@DQS5(CAN0'&.0'+<@.>Y <MR#Y.!#E" H1.4H
M2.4H3.4H4.4H5.4H6.4H7.4H8.4H9!4H9!4H9!4H9!4H9!4H9!4H9!4H9!4H
M9!4H9!4H9!VAD'7TGV1]-V;YUS^:VC5K9*T/_JS[FS?[!%!+ 0(4 Q0    (
M (6$"E<'04UB@0   +$    0              "  0    !D;V-0<F]P<R]A
M<' N>&UL4$L! A0#%     @ A80*5RQ5LO3N    *P(  !$
M ( !KP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ A80*5YE<G",0
M!@  G"<  !,              ( !S $  'AL+W1H96UE+W1H96UE,2YX;6Q0
M2P$"% ,4    " "%A I7B?+29_<%  #?'P  &               @($-"
M>&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ A80*5_#_YTGG
M!@  ;!T  !@              ("!.@X  'AL+W=O<FMS:&5E=',O<VAE970R
M+GAM;%!+ 0(4 Q0    ( (6$"E>>B-(;5 ,  &8*   8              "
M@5<5  !X;"]W;W)K<VAE971S+W-H965T,RYX;6Q02P$"% ,4    " "%A I7
MI@&Q/BX&  !^'@  &               @('A&   >&PO=V]R:W-H965T<R]S
M:&5E=#0N>&UL4$L! A0#%     @ A80*5\(G1U4I P  ^ D  !@
M     ("!11\  'AL+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0    (
M (6$"E?(.TN3* 8  ,L9   8              " @:0B  !X;"]W;W)K<VAE
M971S+W-H965T-BYX;6Q02P$"% ,4    " "%A I7C/UCA, )  #\6P  &
M            @($"*0  >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL4$L! A0#
M%     @ A80*5UJO@4E<"P  YQP  !@              ("!^#(  'AL+W=O
M<FMS:&5E=',O<VAE970X+GAM;%!+ 0(4 Q0    ( (6$"E?(8)2T- 0  $()
M   8              " @8H^  !X;"]W;W)K<VAE971S+W-H965T.2YX;6Q0
M2P$"% ,4    " "%A I7H](&7I@'  !3$@  &0              @('T0@
M>&PO=V]R:W-H965T<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( (6$"E<(=<O.
M;@(  %L%   9              " @<-*  !X;"]W;W)K<VAE971S+W-H965T
M,3$N>&UL4$L! A0#%     @ A80*5SM,W)@;"   "!8  !D
M ("!:$T  'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4    " "%
MA I7/MFA\. #  #R"   &0              @(&Z50  >&PO=V]R:W-H965T
M<R]S:&5E=#$S+GAM;%!+ 0(4 Q0    ( (6$"E>1<V?#"P4  )H+   9
M          " @=%9  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL4$L! A0#
M%     @ A80*5Z]#C6S& P  E @  !D              ("!$U\  'AL+W=O
M<FMS:&5E=',O<VAE970Q-2YX;6Q02P$"% ,4    " "%A I7*.&$ZIL"  #P
M!0  &0              @($08P  >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM
M;%!+ 0(4 Q0    ( (6$"E>!S01O:P8  /\.   9              " @>)E
M  !X;"]W;W)K<VAE971S+W-H965T,3<N>&UL4$L! A0#%     @ A80*5SJ*
MSNT(!   ?@@  !D              ("!A&P  'AL+W=O<FMS:&5E=',O<VAE
M970Q."YX;6Q02P$"% ,4    " "%A I7SH5U9<0$  #Y"@  &0
M    @('#<   >&PO=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0    (
M (6$"E=B&V@'<@(  %4%   9              " @;YU  !X;"]W;W)K<VAE
M971S+W-H965T,C N>&UL4$L! A0#%     @ A80*5U#W<P)2 P  70<  !D
M             ("!9W@  'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6Q02P$"
M% ,4    " "%A I7B#80'YT#   5"0  &0              @('P>P  >&PO
M=V]R:W-H965T<R]S:&5E=#(R+GAM;%!+ 0(4 Q0    ( (6$"E=AO8_@LP(
M (L(   9              " @<1_  !X;"]W;W)K<VAE971S+W-H965T,C,N
M>&UL4$L! A0#%     @ A80*5Y&B+@EF!P  (T(  !D              ("!
MKH(  'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6Q02P$"% ,4    " "%A I7
M4Q/($#H#  "Z"@  &0              @(%+B@  >&PO=V]R:W-H965T<R]S
M:&5E=#(U+GAM;%!+ 0(4 Q0    ( (6$"E=-/WZ+\@(  "H-   9
M      " @;R-  !X;"]W;W)K<VAE971S+W-H965T,C8N>&UL4$L! A0#%
M  @ A80*5U= A&IK @  / 8  !D              ("!Y9   'AL+W=O<FMS
M:&5E=',O<VAE970R-RYX;6Q02P$"% ,4    " "%A I7NB7]AXL%   I(0
M&0              @(&'DP  >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM;%!+
M 0(4 Q0    ( (6$"E<6?KA'D@0  $P5   9              " @4F9  !X
M;"]W;W)K<VAE971S+W-H965T,CDN>&UL4$L! A0#%     @ A80*5_._]=A@
M!   =Q0  !D              ("!$IX  'AL+W=O<FMS:&5E=',O<VAE970S
M,"YX;6Q02P$"% ,4    " "%A I71M%VKL("  #."   &0
M@(&IH@  >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0    ( (6$
M"E=1$IZV)0,  $82   -              "  :*E  !X;"]S='EL97,N>&UL
M4$L! A0#%     @ A80*5Y>*NQS     $P(   L              ( !\J@
M %]R96QS+RYR96QS4$L! A0#%     @ A80*5S0CT;$= P  PA0   \
M         ( !VZD  'AL+W=O<FMB;V]K+GAM;%!+ 0(4 Q0    ( (6$"E>/
M>K1A70$  "03   :              "  26M  !X;"]?<F5L<R]W;W)K8F]O
M:RYX;6PN<F5L<U!+ 0(4 Q0    ( (6$"E?O6\H)A@$  -43   3
M      "  ;JN  !;0V]N=&5N=%]4>7!E<UTN>&UL4$L%!@     G "< B H
' '&P      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
..report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

..report table.authRefData a {
	display: block;
	font-weight: bold;
}

..report table.authRefData p {
	margin-top: 0px;
}

..report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

..report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

..report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

..report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
..pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
..report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

..report hr {
	border: 1px solid #acf;
}

/* Top labels */
..report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

..report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

..report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

..report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

..report td.pl div.a {
	width: 200px;
}

..report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
..report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
..report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
..report .re, .report .reu {
	background-color: #def;
}

..report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
..report .ro, .report .rou {
	background-color: white;
}

..report .rou td {
	border-bottom: 1px solid black;
}

..report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
..report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
..report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

..report .nump {
	padding-left: 2em;
}

..report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
..report .text {
	text-align: left;
	white-space: normal;
}

..report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

..report .text .more {
	display: none;
}

..report .text .note {
	font-style: italic;
	font-weight: bold;
}

..report .text .small {
	width: 10em;
}

..report sup {
	font-style: italic;
}

..report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>125</ContextCount>
  <ElementCount>174</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>17</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000100 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>010000 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/CondensedConsolidatedBalanceSheets</Role>
      <ShortName>CONDENSED CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>010100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>020000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>030000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>040000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>050000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity</Role>
      <ShortName>CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>060100 - Disclosure - Basis of presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/BasisOfPresentation</Role>
      <ShortName>Basis of presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>060200 - Disclosure - Significant accounting policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/SignificantAccountingPolicies</Role>
      <ShortName>Significant accounting policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>060300 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>060400 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>060500 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>060600 - Disclosure - Earnings per share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/EarningsPerShare</Role>
      <ShortName>Earnings per share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>060700 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>060800 - Disclosure - Income taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/IncomeTaxes</Role>
      <ShortName>Income taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>060900 - Disclosure - Subsequent events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>070100 - Disclosure - Basis of presentation (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/BasisOfPresentationPolicies</Role>
      <ShortName>Basis of presentation (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>070200 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/SignificantAccountingPoliciesPolicies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>080300 - Disclosure - Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/RevenueTables</Role>
      <ShortName>Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://transact-tech.com/role/Revenue</ParentRole>
      <Position>19</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>080400 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://transact-tech.com/role/Inventories</ParentRole>
      <Position>20</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>080600 - Disclosure - Earnings per share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/EarningsPerShareTables</Role>
      <ShortName>Earnings per share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://transact-tech.com/role/EarningsPerShare</ParentRole>
      <Position>21</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>080700 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://transact-tech.com/role/Leases</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>090100 - Disclosure - Basis of presentation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/BasisOfPresentationDetails</Role>
      <ShortName>Basis of presentation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://transact-tech.com/role/BasisOfPresentationPolicies</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>090300 - Disclosure - Revenue, Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails</Role>
      <ShortName>Revenue, Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>090302 - Disclosure - Revenue, Contract Balances (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/RevenueContractBalancesDetails</Role>
      <ShortName>Revenue, Contract Balances (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>090304 - Disclosure - Revenue, Remaining Performance Obligations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails</Role>
      <ShortName>Revenue, Remaining Performance Obligations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>090400 - Disclosure - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/InventoriesDetails</Role>
      <ShortName>Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://transact-tech.com/role/InventoriesTables</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>090500 - Disclosure - Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/DebtDetails</Role>
      <ShortName>Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://transact-tech.com/role/Debt</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>090600 - Disclosure - Earnings per share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/EarningsPerShareDetails</Role>
      <ShortName>Earnings per share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://transact-tech.com/role/EarningsPerShareTables</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>090700 - Disclosure - Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/LeasesDetails</Role>
      <ShortName>Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://transact-tech.com/role/LeasesTables</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="form10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>090800 - Disclosure - Income taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://transact-tech.com/role/IncomeTaxesDetails</Role>
      <ShortName>Income taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://transact-tech.com/role/IncomeTaxes</ParentRole>
      <Position>31</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 2 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 -  form10q.htm 11</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" original="form10q.htm">form10q.htm</File>
    <File>exhibit31-1.htm</File>
    <File>exhibit31-2.htm</File>
    <File>exhibit32-1.htm</File>
    <File>tact-20230630.xsd</File>
    <File>tact-20230630_cal.xml</File>
    <File>tact-20230630_def.xml</File>
    <File>tact-20230630_lab.xml</File>
    <File>tact-20230630_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>image0.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="449">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="30">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>49
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "form10q.htm": {
   "axisCustom": 0,
   "axisStandard": 8,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 449,
    "http://xbrl.sec.gov/dei/2023": 30
   },
   "contextCount": 125,
   "dts": {
    "calculationLink": {
     "local": [
      "tact-20230630_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tact-20230630_def.xml"
     ]
    },
    "inline": {
     "local": [
      "form10q.htm"
     ]
    },
    "labelLink": {
     "local": [
      "tact-20230630_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tact-20230630_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "tact-20230630.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2004/ref-2004-08-10.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/currency/2023/currency-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd",
      "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd",
      "https://xbrl.sec.gov/exch/2023/exch-2023.xsd",
      "https://xbrl.sec.gov/naics/2023/naics-2023.xsd",
      "https://xbrl.sec.gov/sic/2023/sic-2023.xsd",
      "https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd"
     ]
    }
   },
   "elementCount": 257,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2023": 3,
    "http://xbrl.sec.gov/dei/2023": 5,
    "total": 8
   },
   "keyCustom": 14,
   "keyStandard": 160,
   "memberCustom": 6,
   "memberStandard": 11,
   "nsprefix": "tact",
   "nsuri": "http://transact-tech.com/20230630",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000100 - Document - Document and Entity Information",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://transact-tech.com/role/DocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060300 - Disclosure - Revenue",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://transact-tech.com/role/Revenue",
     "shortName": "Revenue",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060400 - Disclosure - Inventories",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://transact-tech.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060500 - Disclosure - Debt",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://transact-tech.com/role/Debt",
     "shortName": "Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060600 - Disclosure - Earnings per share",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://transact-tech.com/role/EarningsPerShare",
     "shortName": "Earnings per share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060700 - Disclosure - Leases",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://transact-tech.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060800 - Disclosure - Income taxes",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://transact-tech.com/role/IncomeTaxes",
     "shortName": "Income taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060900 - Disclosure - Subsequent events",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://transact-tech.com/role/SubsequentEvents",
     "shortName": "Subsequent events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "070100 - Disclosure - Basis of presentation (Policies)",
     "menuCat": "Policies",
     "order": "17",
     "role": "http://transact-tech.com/role/BasisOfPresentationPolicies",
     "shortName": "Basis of presentation (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CreditLossFinancialInstrumentPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "070200 - Disclosure - Significant Accounting Policies (Policies)",
     "menuCat": "Policies",
     "order": "18",
     "role": "http://transact-tech.com/role/SignificantAccountingPoliciesPolicies",
     "shortName": "Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CreditLossFinancialInstrumentPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "080300 - Disclosure - Revenue (Tables)",
     "menuCat": "Tables",
     "order": "19",
     "role": "http://transact-tech.com/role/RevenueTables",
     "shortName": "Revenue (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "010000 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
     "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "080400 - Disclosure - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "20",
     "role": "http://transact-tech.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "080600 - Disclosure - Earnings per share (Tables)",
     "menuCat": "Tables",
     "order": "21",
     "role": "http://transact-tech.com/role/EarningsPerShareTables",
     "shortName": "Earnings per share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "tact:LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "080700 - Disclosure - Leases (Tables)",
     "menuCat": "Tables",
     "order": "22",
     "role": "http://transact-tech.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "tact:LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20210101to20211231",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "tact:GainFromEmployeeRetentionCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090100 - Disclosure - Basis of presentation (Details)",
     "menuCat": "Details",
     "order": "23",
     "role": "http://transact-tech.com/role/BasisOfPresentationDetails",
     "shortName": "Basis of presentation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20210101to20211231",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "tact:GainFromEmployeeRetentionCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090300 - Disclosure - Revenue, Disaggregation of Revenue (Details)",
     "menuCat": "Details",
     "order": "24",
     "role": "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails",
     "shortName": "Revenue, Disaggregation of Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630_StatementGeographicalAxis_US",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": "-6",
      "first": true,
      "lang": null,
      "name": "tact:ContractWithCustomerRevenueRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090302 - Disclosure - Revenue, Contract Balances (Details)",
     "menuCat": "Details",
     "order": "25",
     "role": "http://transact-tech.com/role/RevenueContractBalancesDetails",
     "shortName": "Revenue, Contract Balances (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": "-6",
      "first": true,
      "lang": null,
      "name": "tact:ContractWithCustomerRevenueRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090304 - Disclosure - Revenue, Remaining Performance Obligations (Details)",
     "menuCat": "Details",
     "order": "26",
     "role": "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails",
     "shortName": "Revenue, Remaining Performance Obligations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueRemainingPerformanceObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090400 - Disclosure - Inventories (Details)",
     "menuCat": "Details",
     "order": "27",
     "role": "http://transact-tech.com/role/InventoriesDetails",
     "shortName": "Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090500 - Disclosure - Debt (Details)",
     "menuCat": "Details",
     "order": "28",
     "role": "http://transact-tech.com/role/DebtDetails",
     "shortName": "Debt (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember",
      "decimals": "4",
      "lang": null,
      "name": "us-gaap:DebtInstrumentInterestRateStatedPercentage",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U004",
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090600 - Disclosure - Earnings per share (Details)",
     "menuCat": "Details",
     "order": "29",
     "role": "http://transact-tech.com/role/EarningsPerShareDetails",
     "shortName": "Earnings per share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U001",
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "010100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical",
     "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090700 - Disclosure - Leases (Details)",
     "menuCat": "Details",
     "order": "30",
     "role": "http://transact-tech.com/role/LeasesDetails",
     "shortName": "Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "090800 - Disclosure - Income taxes (Details)",
     "menuCat": "Details",
     "order": "31",
     "role": "http://transact-tech.com/role/IncomeTaxesDetails",
     "shortName": "Income taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "3",
      "lang": null,
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U004",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "020000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "030000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230401to20230630",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ComprehensiveIncomeNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "040000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20211231_StatementEquityComponentsAxis_CommonStockMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "050000 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity",
     "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20211231_StatementEquityComponentsAxis_CommonStockMember",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "U002",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060100 - Disclosure - Basis of presentation",
     "menuCat": "Notes",
     "order": "8",
     "role": "http://transact-tech.com/role/BasisOfPresentation",
     "shortName": "Basis of presentation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "060200 - Disclosure - Significant accounting policies",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://transact-tech.com/role/SignificantAccountingPolicies",
     "shortName": "Significant accounting policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "form10q.htm",
      "contextRef": "c20230101to20230630",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 17,
   "tag": {
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "United States [Member]"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r482"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r483"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r484"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r479"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r481"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "presentation": [
      "http://transact-tech.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r207",
      "r208",
      "r209",
      "r210",
      "r264",
      "r326",
      "r352",
      "r367",
      "r368",
      "r418",
      "r420",
      "r422",
      "r423",
      "r425",
      "r438",
      "r439",
      "r448",
      "r455",
      "r463",
      "r467",
      "r509",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r178",
      "r327",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r440",
      "r456",
      "r466",
      "r485",
      "r505",
      "r506",
      "r511",
      "r529"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r178",
      "r327",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r440",
      "r456",
      "r466",
      "r485",
      "r505",
      "r506",
      "r511",
      "r529"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r207",
      "r208",
      "r209",
      "r210",
      "r263",
      "r264",
      "r268",
      "r269",
      "r270",
      "r325",
      "r326",
      "r352",
      "r367",
      "r368",
      "r418",
      "r420",
      "r422",
      "r423",
      "r425",
      "r438",
      "r439",
      "r448",
      "r455",
      "r463",
      "r467",
      "r470",
      "r504",
      "r509",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r207",
      "r208",
      "r209",
      "r210",
      "r263",
      "r264",
      "r268",
      "r269",
      "r270",
      "r325",
      "r326",
      "r352",
      "r367",
      "r368",
      "r418",
      "r420",
      "r422",
      "r423",
      "r425",
      "r438",
      "r439",
      "r448",
      "r455",
      "r463",
      "r467",
      "r470",
      "r504",
      "r509",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r179",
      "r180",
      "r364",
      "r365",
      "r366",
      "r419",
      "r421",
      "r424",
      "r426",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r441",
      "r457",
      "r470",
      "r511",
      "r529"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r179",
      "r180",
      "r364",
      "r365",
      "r366",
      "r419",
      "r421",
      "r424",
      "r426",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435",
      "r436",
      "r437",
      "r441",
      "r457",
      "r470",
      "r511",
      "r529"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "tact_CasinoAndGamingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sales of thermal ticket printers used in slot machines, video lottery terminals, and other gaming machines that print tickets or receipts instead of issuing coins at casinos and racetracks and other gaming venues worldwide.",
        "label": "Casino and Gaming [Member]",
        "terseLabel": "Casino and Gaming [Member]"
       }
      }
     },
     "localname": "CasinoAndGamingMember",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tact_ContractWithCustomerAssetLiabilityNet": {
     "auth_ref": [],
     "calculation": {
      "http://transact-tech.com/role/RevenueContractBalancesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right (asset) to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time and the amount of obligation (liability) to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Contract with Customer, Asset (Liability), net",
        "totalLabel": "Total net contract liabilities"
       }
      }
     },
     "localname": "ContractWithCustomerAssetLiabilityNet",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://transact-tech.com/role/RevenueContractBalancesDetails": {
       "order": 2.0,
       "parentTag": "tact_ContractWithCustomerAssetLiabilityNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer related to customer prepayments for which consideration has been received or is receivable, classified as current.",
        "label": "Contract with Customer, Liability for Customer Prepayments, Current",
        "negatedLabel": "Customer pre-payments"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_ContractWithCustomerRevenueRecognized": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized related to obligation to transfer good or service to customer for which consideration from customer has been received or is due.",
        "label": "Contract with Customer, Revenue Recognized",
        "terseLabel": "Revenue recognized"
       }
      }
     },
     "localname": "ContractWithCustomerRevenueRecognized",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_DebtInstrumentFinancialCovenantEligibleAccountsReceivable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of eligible accounts receivable included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.",
        "label": "Debt Instrument, Financial Covenant, Eligible Accounts Receivable",
        "terseLabel": "Percentage of eligible accounts receivable"
       }
      }
     },
     "localname": "DebtInstrumentFinancialCovenantEligibleAccountsReceivable",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "tact_DebtInstrumentFinancialCovenantEligibleInventory": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum value of eligible raw material and finished goods inventory included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.",
        "label": "Debt Instrument, Financial Covenant, Eligible Inventory",
        "terseLabel": "Eligible inventory"
       }
      }
     },
     "localname": "DebtInstrumentFinancialCovenantEligibleInventory",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of eligible finished goods inventory included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.",
        "label": "Debt Instrument, Financial Covenant, Eligible Inventory, Finished Goods Inventory, Percentage",
        "terseLabel": "Percentage of eligible finished goods inventory"
       }
      }
     },
     "localname": "DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "tact_DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The percentage of eligible raw material included in the calculation of borrowing base imposed by the financial covenants of the debt instrument.",
        "label": "Debt Instrument, Financial Covenant, Eligible Inventory, Raw Material, Percentage",
        "terseLabel": "Percentage of eligible raw material"
       }
      }
     },
     "localname": "DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "tact_DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum sum of (1) excess availability under the Siena Credit Facility (as amended by the Credit Facility Amendment) and (2) unrestricted cash required under a new \"springing\" deposit account control agreement, permitting the Company to direct the use of funds in its deposit account.",
        "label": "Debt Instrument, Minimum excess availability and unrestricted cash",
        "terseLabel": "Minimum excess availability and unrestricted cash required"
       }
      }
     },
     "localname": "DebtInstrumentMinimumExcessAvailabilityAndUnrestrictedCash",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum principal amount, whether or not such amount of loans is actually outstanding, on which interest is paid if the Company does not have the ability to direct the use of funds in the deposit account under the Amended Fee Letter.",
        "label": "Debt Instrument, Minimum principal amount on which interest is paid",
        "terseLabel": "Minimum principal amount on which interest is paid"
       }
      }
     },
     "localname": "DebtInstrumentMinimumPrincipalAmountOnWhichInterestIsPaid",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum principal amount of outstanding borrowings that must be maintained in order to retain the ability to direct the use of funds in the deposit account under the Amended Fee Letter.",
        "label": "Debt Instrument, Minimum principal amount to be maintained to direct use of funds in deposit account",
        "terseLabel": "Minimum principal amount to be maintained to direct use of funds in deposit account"
       }
      }
     },
     "localname": "DebtInstrumentMinimumPrincipalAmountToBeMaintainedToDirectUseOfFundsInDepositAccount",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The period of time the minimum sum of (1) excess availability under the Siena Credit Facility (as amended by the Credit Facility Amendment) and (2) unrestricted cash must be maintained, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Debt Instrument, Period to maintain excess availability and unrestricted cash",
        "terseLabel": "Number of days to maintain excess availability and unrestricted cash"
       }
      }
     },
     "localname": "DebtInstrumentPeriodToMaintainExcessAvailabilityAndUnrestrictedCash",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "tact_FoodServiceTechnologyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sales of the BOHA! ecosystem, which combines the latest generation terminal, cloud-based software applications and related hardware into a unique solution to automate operations with food production in the back-of-house operations in restaurants and food service operations.",
        "label": "Food Service Technology [Member]",
        "terseLabel": "Food Service Technology [Member]"
       }
      }
     },
     "localname": "FoodServiceTechnologyMember",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tact_GainFromEmployeeRetentionCredit": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of gain from the Employee Retention Credit, a refundable tax credit against certain employment taxes equal to 50% of the qualified wages an eligible employer pays to employees after March 12, 2020, and before January 1, 2021.",
        "label": "Gain from Employee Retention Credit",
        "verboseLabel": "Gain from employee retention credit"
       }
      }
     },
     "localname": "GainFromEmployeeRetentionCredit",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "tact_InternationalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other countries outside of the United States.",
        "label": "International [Member]"
       }
      }
     },
     "localname": "InternationalMember",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tact_LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information related to lessee's operating leases, including weighted average lease term and discount rate.",
        "label": "Lessee, Operating Lease, Lease Term and Discount Rate [Table Text Block]",
        "terseLabel": "Additional Information Related to Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "tact_LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of supplemental information for the statement of cash flows related to operating leases.",
        "label": "Lessee, Operating Lease, Supplemental Disclosure for Cash Flows [Table Text Block]",
        "terseLabel": "Cash Flows for Operating Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "tact_PosAutomationAndBankingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sales of thermal printers used primarily by restaurants (including fine dining, casual dining, quick serve and hospitality establishments) located either at the checkout counter or within self-service kiosks to print receipts for consumers or print on linerless labels.",
        "label": "POS Automation and Banking [Member]",
        "terseLabel": "POS Automation [Member]"
       }
      }
     },
     "localname": "PosAutomationAndBankingMember",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tact_RevolvingCreditFacilitySienaLendingGroupLlcMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement with Siena Lending Group LLC that provides a revolving credit line, subject to a borrowing base.",
        "label": "Revolving Credit Facility, Siena Lending Group Llc [Member]",
        "terseLabel": "Sienna Credit Facility [Member]"
       }
      }
     },
     "localname": "RevolvingCreditFacilitySienaLendingGroupLlcMember",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails",
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "tact_TransactServicesGroupMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from range of supplies and consumables used in the printing and scanning activities of customers in the restaurant and hospitality, banking, retail, casino and gaming, government and oil and gas exploration markets.",
        "label": "TransAct Services Group [Member]",
        "terseLabel": "TransAct Services Group [Member]"
       }
      }
     },
     "localname": "TransactServicesGroupMember",
     "nsuri": "http://transact-tech.com/20230630",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant accounting policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r12",
      "r465"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r182",
      "r183"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts receivable, net"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r15"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued liabilities"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r38",
      "r112",
      "r339"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "terseLabel": "Fixed assets, accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r23",
      "r24",
      "r69",
      "r117",
      "r336",
      "r357",
      "r358"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.",
        "label": "Accumulated other comprehensive loss, net of tax"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r2",
      "r7",
      "r24",
      "r297",
      "r300",
      "r322",
      "r353",
      "r354",
      "r489",
      "r490",
      "r491",
      "r496",
      "r497",
      "r498"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "verboseLabel": "Accumulated Other Comprehensive (Loss) Income [Member]"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r61"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.",
        "label": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r271",
      "r272",
      "r273",
      "r362",
      "r496",
      "r497",
      "r498",
      "r513",
      "r532"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r43",
      "r44",
      "r265"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Share-based compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r161"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Anti-dilutive securities excluded from computation of earnings per dilutive share (in shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "auth_ref": [
      "r31"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of antidilutive security.",
        "label": "Antidilutive Securities [Axis]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AntidilutiveSecuritiesNameDomain": {
     "auth_ref": [
      "r31"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.",
        "label": "Antidilutive Securities, Name [Domain]"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r90",
      "r116",
      "r134",
      "r166",
      "r172",
      "r176",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r292",
      "r294",
      "r305",
      "r333",
      "r389",
      "r465",
      "r478",
      "r507",
      "r508",
      "r519"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets:"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r109",
      "r120",
      "r134",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r292",
      "r294",
      "r305",
      "r465",
      "r507",
      "r508",
      "r519"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsNoncurrent": {
     "auth_ref": [
      "r134",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r292",
      "r294",
      "r305",
      "r507",
      "r508",
      "r519"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold or consumed after one year or beyond the normal operating cycle, if longer.",
        "label": "Assets, Noncurrent",
        "totalLabel": "Total noncurrent assets"
       }
      }
     },
     "localname": "AssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Basis of Accounting"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r81"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.",
        "label": "Significant accounting policies"
       }
      }
     },
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/SignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": {
     "auth_ref": [
      "r52",
      "r81",
      "r82"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Business Description and Basis of Presentation [Text Block]",
        "terseLabel": "Basis of Presentation"
       }
      }
     },
     "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalExpendituresIncurredButNotYetPaid": {
     "auth_ref": [
      "r28",
      "r29",
      "r30"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.",
        "label": "Capital Expenditures Incurred but Not yet Paid",
        "terseLabel": "Non-cash capital expenditure items"
       }
      }
     },
     "localname": "CapitalExpendituresIncurredButNotYetPaid",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r27",
      "r111",
      "r442"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r27",
      "r78",
      "r132"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and cash equivalents, end of period",
        "periodStartLabel": "Cash and cash equivalents, beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r1",
      "r78"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Increase (decrease) in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFlowOperatingActivitiesLesseeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash Flow, Operating Activities, Lessee [Abstract]",
        "terseLabel": "Cash Flows Related to Operating Leases [Abstract]"
       }
      }
     },
     "localname": "CashFlowOperatingActivitiesLesseeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r20",
      "r49",
      "r334",
      "r376"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and contingencies (see Notes 5 and 7)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r468",
      "r469",
      "r470",
      "r472",
      "r473",
      "r474",
      "r475",
      "r496",
      "r497",
      "r513",
      "r530",
      "r532"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r60"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r60",
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common stock, shares authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r60"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common stock, shares issued (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r8",
      "r60",
      "r377",
      "r395",
      "r532",
      "r533"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common stock, shares outstanding (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r60",
      "r335",
      "r465"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, $0.01 par value, 20,000,000 shares authorized; 14,001,935 and 13,956,725 shares issued, respectively; 9,957,093 and 9,911,883 shares outstanding, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r25",
      "r122",
      "r124",
      "r128",
      "r329",
      "r343"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive income (loss)"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r510"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.",
        "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]",
        "terseLabel": "Net Contract Liabilities"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "auth_ref": [
      "r248",
      "r250",
      "r261"
     ],
     "calculation": {
      "http://transact-tech.com/role/RevenueContractBalancesDetails": {
       "order": 0.0,
       "parentTag": "tact_ContractWithCustomerAssetLiabilityNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current",
        "terseLabel": "Unbilled receivables, current"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerAssetNetNoncurrent": {
     "auth_ref": [
      "r248",
      "r250",
      "r261"
     ],
     "calculation": {
      "http://transact-tech.com/role/RevenueContractBalancesDetails": {
       "order": 1.0,
       "parentTag": "tact_ContractWithCustomerAssetLiabilityNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as noncurrent.",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Noncurrent",
        "terseLabel": "Unbilled receivables, net of current portion"
       }
      }
     },
     "localname": "ContractWithCustomerAssetNetNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract with Customer, Liability [Abstract]",
        "terseLabel": "Contract liabilities [Abstract]"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r248",
      "r249",
      "r261"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      },
      "http://transact-tech.com/role/RevenueContractBalancesDetails": {
       "order": 3.0,
       "parentTag": "tact_ContractWithCustomerAssetLiabilityNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Deferred revenue",
        "negatedLabel": "Deferred revenue, current"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityNoncurrent": {
     "auth_ref": [
      "r248",
      "r249",
      "r261"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      },
      "http://transact-tech.com/role/RevenueContractBalancesDetails": {
       "order": 4.0,
       "parentTag": "tact_ContractWithCustomerAssetLiabilityNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.",
        "label": "Deferred revenue, net of current portion",
        "negatedLabel": "Deferred revenue, net of current portion"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/RevenueContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfRevenue": {
     "auth_ref": [
      "r73",
      "r134",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r305",
      "r507"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.",
        "label": "Cost of sales"
       }
      }
     },
     "localname": "CostOfRevenue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CreditLossFinancialInstrumentPolicyTextBlock": {
     "auth_ref": [
      "r104",
      "r187",
      "r188",
      "r189",
      "r190",
      "r191",
      "r192",
      "r193",
      "r194",
      "r195",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status.",
        "label": "Credit Losses"
       }
      }
     },
     "localname": "CreditLossFinancialInstrumentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r85",
      "r133",
      "r220",
      "r226",
      "r227",
      "r228",
      "r229",
      "r230",
      "r231",
      "r236",
      "r243",
      "r244",
      "r246"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]",
        "terseLabel": "Debt"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/Debt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r10",
      "r56",
      "r57",
      "r91",
      "r92",
      "r136",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r232",
      "r233",
      "r234",
      "r235",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r313",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails",
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "Basis spread on variable rate"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r17",
      "r222"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentLineItems": {
     "auth_ref": [
      "r136",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r232",
      "r233",
      "r234",
      "r235",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r245",
      "r313",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Debt Instrument [Line Items]"
       }
      }
     },
     "localname": "DebtInstrumentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails",
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r18",
      "r136",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r232",
      "r233",
      "r234",
      "r235",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r313",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails",
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r18",
      "r39",
      "r40",
      "r45",
      "r46",
      "r48",
      "r50",
      "r86",
      "r87",
      "r136",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r227",
      "r232",
      "r233",
      "r234",
      "r235",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r245",
      "r313",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r493"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Schedule of Long-term Debt Instruments [Table]"
       }
      }
     },
     "localname": "DebtInstrumentTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails",
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instruments [Abstract]",
        "terseLabel": "Basis of presentation [Abstract]"
       }
      }
     },
     "localname": "DebtInstrumentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredFinanceCostsGross": {
     "auth_ref": [
      "r47"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.",
        "label": "Debt Issuance Costs, Gross",
        "terseLabel": "Deferred financing costs"
       }
      }
     },
     "localname": "DeferredFinanceCostsGross",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r276",
      "r277"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "terseLabel": "Deferred tax assets"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r5",
      "r89",
      "r103",
      "r287",
      "r288",
      "r495"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationAndAmortization": {
     "auth_ref": [
      "r5",
      "r37"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.",
        "label": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of revenue [Abstract]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "auth_ref": [
      "r260",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [
      "r260",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r511"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Disaggregation of Revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings per share [Abstract]",
        "verboseLabel": "Net income (loss) per common share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r129",
      "r142",
      "r143",
      "r144",
      "r145",
      "r146",
      "r151",
      "r153",
      "r158",
      "r159",
      "r160",
      "r164",
      "r303",
      "r304",
      "r330",
      "r344",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Basic (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic [Abstract]",
        "verboseLabel": "Net income (loss) per common share [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareBasicAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasicOtherDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shares used in per-share calculation:"
       }
      }
     },
     "localname": "EarningsPerShareBasicOtherDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r129",
      "r142",
      "r143",
      "r144",
      "r145",
      "r146",
      "r153",
      "r158",
      "r159",
      "r160",
      "r164",
      "r303",
      "r304",
      "r330",
      "r344",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.",
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Diluted (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareReconciliationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share Reconciliation [Abstract]",
        "terseLabel": "Earnings per share [Abstract]"
       }
      }
     },
     "localname": "EarningsPerShareReconciliationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r150",
      "r161",
      "r162",
      "r163"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Earnings per share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r306"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Effect of exchange rate changes on cash and cash equivalents"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Effective tax rate"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r8",
      "r107",
      "r125",
      "r126",
      "r127",
      "r137",
      "r138",
      "r139",
      "r141",
      "r147",
      "r149",
      "r165",
      "r185",
      "r186",
      "r247",
      "r271",
      "r272",
      "r273",
      "r283",
      "r284",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r322",
      "r353",
      "r354",
      "r355",
      "r362",
      "r415"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FederalFundsEffectiveSwapRateMember": {
     "auth_ref": [
      "r512"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap having its variable-rate leg referenced to Federal Funds effective rate with no additional spread over Federal Funds effective rate on that variable-rate leg.",
        "label": "Fed Funds Effective Rate Overnight Index Swap Rate [Member]",
        "terseLabel": "Federal Funds Rate [Member]"
       }
      }
     },
     "localname": "FederalFundsEffectiveSwapRateMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r114",
      "r206"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "terseLabel": "Intangible assets, accumulated amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionGainLossUnrealized": {
     "auth_ref": [
      "r80",
      "r397",
      "r476",
      "r515",
      "r516",
      "r531"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before tax, of unrealized gain (loss) from foreign currency transaction.",
        "label": "Unrealized Gain (Loss), Foreign Currency Transaction, before Tax",
        "negatedLabel": "Unrealized foreign currency transaction losses"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionGainLossUnrealized",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r74",
      "r400"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r113",
      "r205",
      "r328",
      "r449",
      "r465",
      "r502",
      "r503"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r72",
      "r134",
      "r166",
      "r171",
      "r175",
      "r177",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r305",
      "r447",
      "r507"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 0.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r0",
      "r70",
      "r94",
      "r166",
      "r171",
      "r175",
      "r177",
      "r331",
      "r341",
      "r447"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income (loss) before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF OPERATIONS [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r135",
      "r275",
      "r280",
      "r281",
      "r282",
      "r285",
      "r289",
      "r290",
      "r291",
      "r361"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r96",
      "r105",
      "r148",
      "r149",
      "r169",
      "r278",
      "r286",
      "r345"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "negatedLabel": "Income tax (expense) benefit",
        "terseLabel": "Income tax (expense) benefit"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 19.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.",
        "label": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities": {
     "auth_ref": [
      "r492"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 20.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in accrued expenses, and obligations classified as other.",
        "label": "Accrued liabilities and other liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 18.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "Increase (Decrease) in Other Operating Assets",
        "negatedLabel": "Other current and long-term assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherReceivables": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in receivables classified as other.",
        "label": "Increase (Decrease) in Other Receivables",
        "negatedLabel": "Employee retention credit receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "auth_ref": [
      "r154",
      "r155",
      "r156",
      "r160",
      "r266"
     ],
     "calculation": {
      "http://transact-tech.com/role/EarningsPerShareDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.",
        "label": "Add: Dilutive effect of outstanding options and restricted stock units as determined by the treasury stock method (in shares)"
       }
      }
     },
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r35",
      "r36"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "verboseLabel": "Intangible assets, net of accumulated amortization of $1,441 and $1,364, respectively"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestIncomeExpenseNonoperatingNet": {
     "auth_ref": [],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net amount of nonoperating interest income (expense).",
        "label": "Interest Income (Expense), Nonoperating, Net",
        "terseLabel": "Interest, net"
       }
      }
     },
     "localname": "InterestIncomeExpenseNonoperatingNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r204"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "Inventory Disclosure [Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r84",
      "r444"
     ],
     "calculation": {
      "http://transact-tech.com/role/InventoriesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.",
        "label": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r118",
      "r443",
      "r465"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://transact-tech.com/role/InventoriesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventories",
        "totalLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves": {
     "auth_ref": [
      "r84",
      "r488"
     ],
     "calculation": {
      "http://transact-tech.com/role/InventoriesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregated amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed. This amount is net of valuation reserves and adjustments.",
        "label": "Raw materials and purchased component parts"
       }
      }
     },
     "localname": "InventoryRawMaterialsAndSuppliesNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseDescriptionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Description [Abstract]",
        "terseLabel": "Operating Lease Weighted Average Remaining Lease Term and Discount Rate [Abstract]"
       }
      }
     },
     "localname": "LesseeOperatingLeaseDescriptionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r518"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]",
        "terseLabel": "Maturity of Operating Lease Liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r321"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://transact-tech.com/role/LeasesDetailsCalc2": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total undiscounted lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r321"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r321"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r321"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "auth_ref": [
      "r518"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetails": {
       "order": 0.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.",
        "label": "2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r321"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetailsCalc2": {
       "order": 0.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Less imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r314"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r14",
      "r134",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r293",
      "r294",
      "r295",
      "r305",
      "r375",
      "r446",
      "r478",
      "r507",
      "r519",
      "r520"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r65",
      "r93",
      "r338",
      "r465",
      "r494",
      "r501",
      "r514"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and shareholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Shareholders' Equity:"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r16",
      "r110",
      "r134",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r293",
      "r294",
      "r295",
      "r305",
      "r465",
      "r507",
      "r519",
      "r520"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "auth_ref": [
      "r10",
      "r53",
      "r54",
      "r55",
      "r58",
      "r134",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r293",
      "r294",
      "r295",
      "r305",
      "r507",
      "r519",
      "r520"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer.",
        "label": "Liabilities, Noncurrent",
        "totalLabel": "Total noncurrent liabilities"
       }
      }
     },
     "localname": "LiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility [Abstract]",
        "terseLabel": "Debt [Abstract]"
       }
      }
     },
     "localname": "LineOfCreditFacilityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r13"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "terseLabel": "Maximum borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationDetails",
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r13"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).",
        "label": "Line of Credit Facility, Remaining Borrowing Capacity",
        "terseLabel": "Additional borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.",
        "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage",
        "terseLabel": "Percentage fee on unused borrowings"
       }
      }
     },
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LinesOfCreditCurrent": {
     "auth_ref": [
      "r56",
      "r91"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Line of Credit, Current",
        "terseLabel": "Current portion of revolving loan payable"
       }
      }
     },
     "localname": "LinesOfCreditCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r131"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash used in financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r131"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r78",
      "r79",
      "r80"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 0.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by (used in) operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r71",
      "r80",
      "r95",
      "r108",
      "r121",
      "r123",
      "r127",
      "r134",
      "r140",
      "r142",
      "r143",
      "r144",
      "r145",
      "r148",
      "r149",
      "r157",
      "r166",
      "r171",
      "r175",
      "r177",
      "r184",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r304",
      "r305",
      "r342",
      "r398",
      "r413",
      "r414",
      "r447",
      "r476",
      "r507"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net income (loss)",
        "totalLabel": "Net income (loss)"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows",
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss",
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Noncash Investing and Financing Items [Abstract]",
        "terseLabel": "Supplemental schedule of non-cash investing activities:"
       }
      }
     },
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).",
        "label": "Nonoperating Income (Expense)",
        "totalLabel": "Interest and other (expense) income"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Nonoperating Income (Expense) [Abstract]",
        "terseLabel": "Interest and other income (expense):"
       }
      }
     },
     "localname": "NonoperatingIncomeExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NontradeReceivablesCurrent": {
     "auth_ref": [
      "r487"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of amounts currently receivable other than from customers. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected within one year or the normal operating cycle, if longer.",
        "label": "Nontrade Receivables, Current",
        "terseLabel": "Employee retention credit receivable"
       }
      }
     },
     "localname": "NontradeReceivablesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Operating Expenses",
        "totalLabel": "Operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r166",
      "r171",
      "r175",
      "r177",
      "r447"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 0.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Operating income (loss)"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r517"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "Operating Lease, Expense",
        "terseLabel": "Operating lease expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]",
        "terseLabel": "Maturity of Operating Lease Liabilities [Abstract]"
       }
      }
     },
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://transact-tech.com/role/LeasesDetailsCalc2": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "terseLabel": "Total lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r316"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Lease liability, net of current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r317",
      "r318"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "terseLabel": "Operating cash outflows from leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r315"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Right-of-use asset, net"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r320",
      "r464"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Weighted average discount rate"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r319",
      "r464"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Weighted average remaining lease term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/LeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r119",
      "r465"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r115"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 8.0,
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r3"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax",
        "terseLabel": "Foreign currency translation adjustment, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity",
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r76"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfLoanCosts": {
     "auth_ref": [
      "r26"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for loan origination associated cost which is usually collected through escrow.",
        "label": "Payments of Loan Costs",
        "negatedLabel": "Payment of bank financing costs"
       }
      }
     },
     "localname": "PaymentsOfLoanCosts",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r130"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Payment, Tax Withholding, Share-Based Payment Arrangement",
        "negatedLabel": "Withholding taxes paid on stock issuances"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r77"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Capital expenditures"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrimeRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.",
        "label": "Prime Rate [Member]"
       }
      }
     },
     "localname": "PrimeRateMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PriorPeriodReclassificationAdjustmentDescription": {
     "auth_ref": [
      "r486"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.",
        "label": "Reclassifications"
       }
      }
     },
     "localname": "PriorPeriodReclassificationAdjustmentDescription",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r6",
      "r332",
      "r340",
      "r465"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Net",
        "verboseLabel": "Fixed assets, net of accumulated depreciation of $18,193 and $17,656, respectively"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r51",
      "r274",
      "r527"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Engineering, design and product development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r62",
      "r88",
      "r337",
      "r356",
      "r358",
      "r360",
      "r378",
      "r465"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated undistributed earnings (deficit).",
        "label": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r107",
      "r137",
      "r138",
      "r139",
      "r141",
      "r147",
      "r149",
      "r185",
      "r186",
      "r271",
      "r272",
      "r273",
      "r283",
      "r284",
      "r296",
      "r298",
      "r299",
      "r301",
      "r302",
      "r353",
      "r355",
      "r362",
      "r532"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated undistributed earnings (deficit).",
        "label": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r167",
      "r168",
      "r170",
      "r173",
      "r174",
      "r178",
      "r179",
      "r181",
      "r259",
      "r260",
      "r327"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 0.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "verboseLabel": "Net sales"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/RevenueDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r106",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r262"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.",
        "label": "Revenue from Contract with Customer [Text Block]",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/Revenue"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenuePerformanceObligationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue, Performance Obligation [Abstract]",
        "terseLabel": "Remaining performance obligations [Abstract]"
       }
      }
     },
     "localname": "RevenuePerformanceObligationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligation": {
     "auth_ref": [
      "r101"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.",
        "label": "Revenue, Remaining Performance Obligation, Amount",
        "terseLabel": "Remaining performance obligations"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligation",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": {
     "auth_ref": [
      "r102"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period",
        "terseLabel": "Expected timing of satisfaction, period"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": {
     "auth_ref": [
      "r102"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.",
        "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]"
       }
      }
     },
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/RevenueRemainingPerformanceObligationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": {
     "auth_ref": [
      "r31"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]"
       }
      }
     },
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r499"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "terseLabel": "Earnings per Share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r11",
      "r66",
      "r67",
      "r68"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SecuredDebt": {
     "auth_ref": [
      "r10",
      "r92",
      "r528"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date, including the current and noncurrent portions, of collateralized debt obligations (with maturities initially due after one year or beyond the operating cycle, if longer). Such obligations include mortgage loans, chattel loans, and any other borrowings secured by assets of the borrower.",
        "label": "Secured Debt",
        "terseLabel": "Balance outstanding"
       }
      }
     },
     "localname": "SecuredDebt",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.",
        "label": "Selling and marketing"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r4"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "terseLabel": "Relinquishment of stock awards to pay withholding taxes (in shares)"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r8",
      "r22",
      "r107",
      "r125",
      "r126",
      "r127",
      "r137",
      "r138",
      "r139",
      "r141",
      "r147",
      "r149",
      "r165",
      "r185",
      "r186",
      "r247",
      "r271",
      "r272",
      "r273",
      "r283",
      "r284",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r322",
      "r353",
      "r354",
      "r355",
      "r362",
      "r415"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [
      "r137",
      "r138",
      "r139",
      "r165",
      "r327",
      "r359",
      "r363",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r377",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r396",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r415",
      "r471"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED BALANCE SHEETS [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS) [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r137",
      "r138",
      "r139",
      "r165",
      "r327",
      "r359",
      "r363",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r377",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r396",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r415",
      "r471"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockCompensationPlanMember": {
     "auth_ref": [
      "r500"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share-based payment arrangement in which award of equity shares are granted. Arrangement includes, but is not limited to, grantor incurring liability for product and service based on price of its shares.",
        "label": "Share-Based Payment Arrangement [Member]",
        "terseLabel": "Stock Awards [Member]"
       }
      }
     },
     "localname": "StockCompensationPlanMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StockGrantedDuringPeriodValueSharebasedCompensationForfeited": {
     "auth_ref": [
      "r9"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of forfeited shares granted under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "Shares Granted, Value, Share-Based Payment Arrangement, Forfeited",
        "negatedLabel": "Relinquishment of stock awards to pay for withholding taxes"
       }
      }
     },
     "localname": "StockGrantedDuringPeriodValueSharebasedCompensationForfeited",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r8",
      "r59",
      "r60",
      "r88",
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period",
        "terseLabel": "Issuance of shares from stock awards (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r8",
      "r59",
      "r60",
      "r88",
      "r362",
      "r415",
      "r427",
      "r477"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.",
        "label": "Stock Issued During Period, Value, New Issues",
        "terseLabel": "Issuance of common stock from restricted stock units"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockTransactionsParentheticalDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Transactions, Parenthetical Disclosure [Abstract]",
        "terseLabel": "Supplemental Share Information:"
       }
      }
     },
     "localname": "StockTransactionsParentheticalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r60",
      "r63",
      "r64",
      "r83",
      "r379",
      "r395",
      "r416",
      "r417",
      "r465",
      "r478",
      "r494",
      "r501",
      "r514",
      "r532"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.",
        "label": "Equity, Attributable to Parent",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "totalLabel": "Total shareholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders' equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets",
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r323",
      "r324"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]",
        "terseLabel": "Subsequent events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TreasuryStockCommonMember": {
     "auth_ref": [
      "r41"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury.",
        "label": "Treasury Stock [Member]"
       }
      }
     },
     "localname": "TreasuryStockCommonMember",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfChangesInShareholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TreasuryStockCommonShares": {
     "auth_ref": [
      "r41"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury.",
        "label": "Treasury stock (in shares)"
       }
      }
     },
     "localname": "TreasuryStockCommonShares",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_TreasuryStockValue": {
     "auth_ref": [
      "r21",
      "r41",
      "r42"
     ],
     "calculation": {
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.",
        "label": "Treasury Stock, Value",
        "negatedLabel": "Treasury stock, at cost (4,044,842 shares)"
       }
      }
     },
     "localname": "TreasuryStockValue",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r32",
      "r33",
      "r34",
      "r97",
      "r98",
      "r99",
      "r100"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "Use of Assumptions and Estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/BasisOfPresentationPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/DebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r152",
      "r160"
     ],
     "calculation": {
      "http://transact-tech.com/role/EarningsPerShareDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.",
        "label": "Diluted (in shares)",
        "totalLabel": "Diluted: Weighted average common and common equivalent shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r151",
      "r160"
     ],
     "calculation": {
      "http://transact-tech.com/role/EarningsPerShareDetails": {
       "order": 0.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Basic (in shares)",
        "terseLabel": "Basic: Weighted average common shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/CondensedConsolidatedStatementsOfOperations",
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]",
        "terseLabel": "Shares [Abstract]"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "presentation": [
      "http://transact-tech.com/role/EarningsPerShareDetails"
     ],
     "xbrltype": "stringItemType"
    }
   },
   "unitCount": 4
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 6.M.Q4)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147483530/326-20-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org//606/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(15))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(16))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(18))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(9))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(c))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org//260/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479391/326-20-30-4A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479391/326-20-30-5A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479366/326-20-35-8A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-14",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-3C",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-3D",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479175/326-30-30-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13A",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479148/326-30-35-13A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479148/326-30-35-7A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-3A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-3C",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-3D",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org//330/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q4)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(i)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1F",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1I",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "https://asc.fasb.org//1943274/2147482916/730-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org//740/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(iii)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(h)(1)(iv)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(i)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//842-20/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848",
   "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org//855/tableOfContent",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(11))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.6-03(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(b)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(a)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(e)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(f)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(14))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(15))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(17))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(19))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(8))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-05(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.6-05(4))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(b)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Subparagraph": "(b)(2)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "220",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(9))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(6))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "505",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12A",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r456": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r458": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r463": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r464": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r465": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(b)(1)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r469": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "210",
   "Subparagraph": "(a)(1)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r470": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r471": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "310",
   "Subparagraph": "(d)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r472": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r473": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r474": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r475": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "320",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r476": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r477": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r478": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "830",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r479": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r481": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r482": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r483": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r484": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r485": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r486": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "205",
   "URI": "https://asc.fasb.org//1943274/2147483504/205-10-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r489": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r490": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r491": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r492": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r493": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(f))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r494": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r496": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r497": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r498": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r499": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r501": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r502": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r503": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(h)",
   "Topic": "350",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r504": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "410",
   "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r505": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r506": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Topic": "450",
   "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r507": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r509": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r512": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480682/815-20-25-6A",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r515": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r516": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "https://asc.fasb.org//1943274/2147481926/830-20-50-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r517": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r518": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r519": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "https://asc.fasb.org//205/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r520": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r521": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r522": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r523": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r524": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r525": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r526": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r527": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "https://asc.fasb.org//1943274/2147482517/912-730-25-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r528": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r529": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(24))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "205",
   "Subparagraph": "(a)",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r531": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-07(7)(c))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r532": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r533": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.6-09(7))",
   "Topic": "946",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(25))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(26))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(23))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "https://asc.fasb.org//235/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org//275/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "https://asc.fasb.org//470/tableOfContent",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "c(2)",
   "Topic": "718",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>50
<FILENAME>0001140361-23-039090-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001140361-23-039090-xbrl.zip
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
MF4R^P^OWWKJ_?M]]F_^/P#_V/SU^_.'_4$L#!!0    ( (6$"E=)QJ%F10D
M ! R   /    97AH:6)I=#,Q+3(N:'1M[5MK4R,W%OV>JOP'+5.91Y4-_7X
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
M8JHZ+^!96#%-U.:AY^86CC#?X8.(>]\_B#2_YHL5_JN^O3U^] ]02P,$%
M  @ A80*5R:/^F@P20$ +;82  L   !F;W)M,3!Q+FAT;>R]:U/C2)8__'XC
M]CMHF9G]5T>8JKQ?JKHK@J:@F]UJJ 9Z+L^;B;P6VC8V(\O5,)_^2<DVV"#
M-I8MF:R=;6Q)EE)YSOF=:Y[\_B*_[";7E]W>X/VUSKKI#SL7>7[U_MV[/_[X
MXVUQY&T_^_H. 8#?I;U!KGK&[8RO[Z:]WY^XO#BMU>#V\NL'U_^!RZNAE/)=
M>?;VTD%:=6&X+7SW]U\^GYD+=ZEV[X^G>+R]^^'T:-B[T<G)I>F@3Q#D3[WL
MZ(K)#P99?GNQ5P-=7A@.AHL1OKWK]6,WA,7LA3=T?__Q]//=Y7GU]7>7OLLS
MU1OX?G:I\K3?*YX&=@':A6CJ)KL#9V9N%+Z__=K_]N1](-T%8A?#R7V&@]VO
M2ET]?,GQB9D7M>[>-$^>&$[,7&CZPUZ>W51?/#XY^X-AEKF>>>P7X[.S@\FS
MW?SFR@VJ)S.<?E><+GZ#=@&>?N<\>Y0#Y+MP=G)A3Z5F4#VD\M3,> :IJ;XT
MG)B],+_*'KDRG)FYU%V;B^I+BS.S,^C\(Y/G_.P]C7WDEL;.7)@K<\>H)2.%
M [NY,Q=O3?^RO!0P#,:7/R[A!=3L?/S/__C^PBD;_B;AW_=YFG?=Q^_?C?Z.
M#_[7[F[R.36N-W VR?OODQ^SOK)9:K^ZY##M!:%/53<YZW>'!3</.LE1S[P=
M_;;\]ZEOAI>NER<F<RH/]Q@.TM[7Z;M\.3WQ:=<E"+_E;^%;"AF:^OU^_^HF
M2[]>Y$D8.4UVD^(=IW^^NSL9ZJ7+55*\\:[[US#]]L/.?K^7AT?OG@>>VTG,
MZ-L/.[F[SM^5,Y"\*^;@W7@2PD?=MS?)(+_INA]VM#*_?\V"8-A=T^_VL_?)
MGWSY[T,R^0[*?Q_*F;3IMR0-9/QT]N4P+03]Y]1:U]N9W,ZF@ZNNNGF?]/H]
M%W[R?7K]OGBPRT8?RZO+C^&"XS!G66J2GKHL?NK2]WMA$FTQD8==]76G?-)A
MH/T_F>1 :<6!%8IXRI1VP@I!/%1RQ#GE>U_GIP4SFI)#((!Y_XY71ECTPT[
MK_<^O79VUZMN4!8?RS_?OYL9TN,CW"\1(3],!T9U_^%4=M"SGP+)IP8+''&
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
M18.+8(U/Z)Z\"=0LW9'1VI6'UGZ8N5N_.CBUZ]$>Q1 ?"K\BEE&K&$)($D:
MXL8BJ0T7!@<L8+4+?WUN]@-38U,,M5=ZI/\S[-XD&(X6WW=*/A@MRRQ.CKI)
M)?UA7HKDE-<[9IF*R@\S7UJI4P9YQMQQF(UZG#^,:98W*SN=E9W1!B=W0YF.
M;!HA ?#$(N((%U)QS %WUF)0K,2H7&_#B]6'17>J\EC99RR(ATF#.3/X8>?H
M^# XKT$=N]*-G6YE$*9GU_;SW?'%.Q]E1U+1@7?ED9/7^;B:);POH/%M"&K.
MWE$/VD--]XYZT%AJ4[VC'L[:N(7"CZ=?#K^HK^['S*G?BS*CVP"$Z3J5E46^
M%[?W';W4]"+PVQ9:]V:OXA&'_7Y>%(]5E&'MW!OA$V.\_?U5.+*KBT.[RN<%
M?53W#W4SF&T$=D?%T8!'! -3ZS)G B;C8^".4FB:4',LVYR>MH=37_UB/Y>-
MW>::F7O?_FMW]\OI2>'J%?<9%8Z=NH'+_Q(^_P7]Y2]_V=W]^#C5YR;)R' ;
M?6]IU[G'"\6G553YE(!3XP54[P/>!=)T@PGPX8DEQR>G7TY.]\X//JU24:WV
M)56)_4?'GP[^'KX%OMGKF8M^%MCC^W?J99T+%IG"<@"WL[3$9+V2(*J$;QE[
MS,<M'E9,W0\[: T1PR][I^?)4;*;'-YZ'D>]D7HOR/N"^(]XBZNJ6YI1K!U>
M/"!DW2$1^18\-@4+!T4$>LM6MCSB"=H\<J_Z9J)*W^[O'QP<'BX8[YFQF.0R
MC6L"@N7N,H$OX?HGR+2"-WV!I-\)^.V^D(/DS;"GAC;-G7U)M>:3HO[$.S>
MTP[+?ZL5QY4^9[&I??HQ&Q+BFJ=V?2(4[*R+K'"/__3C65$P6O3-&CB;A$^E
MVBI3,S^J;K&+67)VX5P^*.ROHD]*&5J8ZNM7IJ(_.3/JF3X..* -R.!B>G;6
M!<5O\7(PBS>H>2,*1!18$0J<?#D(CN'1R?'9K^A7_"@B3.G;  ,G5V[D.PU6
MX)O=%DB.W:T\C,R5V#)(KR?E9F5FXL6QVA'URJ?,=BA]X1L4@QW?]S5!X!*=
M(2,$1@AL&@3NG_SRY?3@YX/CLZ._'BR @D6.*W,7Q4XQWUS9U^C2)6\^]P?%
MLC%UAVN/ ]IH,A\:5:\)1&@$D0@B6P BA_.BAAI<)(?=_A^#&9"X#PT5KM9K
M0@4642&BPD918>DZW%M(./CUMZ/S?RQ@3Y353H.BDJ>LC+CH=ZW+!N,RC.3@
M7\,TOXF6Q=R4X!%#(H9L%$-68ED<GYP?G!7E\WGX4=Y/'L&2JMQ(&9UY)=(N
MHK2_.FE?1).O++7Z(OW9 KPI7A*]W?GXB^JIKR6.W!:"?DH'9CC:[:,P)O9Z
MJGLS2$OCY0Y^"GP:58\7UYRZP;!;&35^);@$8Y0T M-:@.GYC&3[@0D'8/JU
M6#62%CMM?QLY/^% =_*]@*ANO]BO>)#LZ?XP'[=F24[3P>^O"7=0#*%$W%D+
M[CROX-J/.^1M&<3)LWYWU WT2]8WS@[+G=DCJ*R0\Y^H*WY*#&=*CMLL^0N^
M_X0?-E%R7=1<CS9Y64>]=2S"C-IM'K:.E=3S:;<EEZ#L3-3BYX.?]C[O?/SL
MO@:GOU2'98^PUZ4/8XXAPM!Z8&@OXE U#IT>G?WOX=[^^<GIV<['PLM/B@7D
M_2P"402B"$0Q_;$N'/KM^/3@IZ.S\X/3@T]G>Y^+G.UOO:F--\Y4UY5YD%$A
MQW2;XR*@\-O C7:E*@VI"%X1O")XQ13)NL#KT\'AWF^?S\^*3:B]*C.VOUT5
M#:-=+^UG4U@5<2GB4L2EF$)9$R[]<G1\<+9W>'#^CYV/OZ0]%ZPH[X+Q-)7F
MC8@4$2DBTJH1Z?EE6:\4D4[.?SXX/3H^/#G]I5PWO?/Q00JL%8A4'DN+4N+
M*;N83?7,FT6I&98:71>!*P)74X'K^0J%E@+79%71WW\^^O&H\-0.KB]2G;ZN
M*O\UX$@L0%E[ <HJA/].0LZ.?CK>.__MM(C WGU^55*RQ&*8T=^%.MV/[K&6
MIJM/2<%D*+/3NTQ[X,>;#M].TS,4?'"+4<O;T3T>MIEY=)(Z27FDDPQ<EOJ9
M*1,/6JCV"L.S.[FHN/WML< +E5U,9U_D\5;%U2V.I_BHH0V,9X5WU##XD:[&
MTR]3<OM=X>>X&>T#LLWTKIV,/?NJWX!.4OSON^>$MC.B[E/$'=,QS0.#F?&Q
M;RI+R_TV)Q0O.;#<KZ%P/L8=P,N-!=SU+=W5C #?%^*'W^?K_KO<^NC*WK]W
M#5R/CO>.]X_V/B=3#M8"P]EI2&/>Y[OO3GCQT]F7P\_I(#\O!O?BC<U(,9)*
M%;42.HT*4=[.K3-'+=\KQU-!NL<UY4H&?\=;9^=[YP>_'!R?GVU@/Y@G$6G<
M[OS5=#:?IU_Y/,*_TD'MCUN1%_TQ'_0A/PDJX?CLX%.R?W)\=O+YZ%,QR.3'
MO<^!MPZ2LY\/#NZX:HUCKNB!.Q]GS@>*8S8U/B^O7QXEG^?!V1;_B^+AM_+>
MQ8X8A5EW.\[[$#0Z_2$9O^.M%5B8(CL?GW(*[C_@UNF!2S[L64_QT2>B9Y_X
M2(ORT88?H\<OYIZLA%=G.R\NXI'-,?D/&6P1<B1_7 09VBU$H32A_\C47)W)
M(U>\F"M>UD>X49RQ< !F,=2JMX%1)7'V!@.7#Q9;V;.\3+R$_=FJ9N]ES#WK
MO 7]?-1+\HO^<*!Z-CCU[MJXJWRT:U9B5:X6ZUR_4FY_+8P=#+O15O&):@TW
M/POFJ]%-M3!+G+T&B]K$S.9%I'^Q\/6]0^O(ZY4M,XL::5-\</\:IN%M1_VM
M'@YH36)]ZZ@\,X%KYK#Y!K4@55=B0_QYD\2:GL$RN7([5;*!4U6]A>9PL/M5
MJ:OWA33L]6SQY^!.%/;R?95EQ?Z\?RWVYIS:25-20A61RF)+"=9 2&:M1!QI
M[X4SH&HGS7*[U>F=--'T3IJ[^'8C3?S,1IH0=#AE#W;17 <OK%AJ-N ;1HAY
M0BE$/'DD#[Y2\.#2(@"HDX(K0HF0"#K!N$-4,6V!?P@>"*+[V_ N"QZ\(\FK
MPXXU6GX-,>_V1MO$#Y+,&1=84G==)^FYO!G6W>;PM5[E\B2$-='NF;#)Z2V7
M'+M\[--/(18#CCJ$*+?4$V*1,%Q;S!A2TBD#>+WF#ND0 ML#69NT::)@U2%8
M*Y(BI9TWF!FH'"'2&ZU($"@@E5:"$4IKU?L0=V11Z+F%4A3C.E.<>G!YU>W?
M.!<4?Q[8KV!6DSF;YE.60#.,@/;Y7QM#N)9%4X[#+S)EW1T>#AZBH1":* :$
M%DX2 9SPUD#"C*(" BGU*FT*GUX[N_MOE_4+(@H$X8?V(&$,GT3QK<]VF4M6
MI7>86J6\!XX P)6!SAJJA5!8"UHAJZNT7#H4@-<FKJ\O8G'4^Q:8KI^5_3":
M8)]$7VH>9EB#.3'AC)O@54V!D@780 ^,)<(0Q8G$Q  %O..(:D10O4$)VB%
MM >58E!BVP1I2:G!@@ BF.,.:L(4411K1S0@6&-$E:Q7E:,.0-LI->L,0E06
M4S8^,C%JZ6!F"L::H>D7G]#-^3?/%1HWU0-ZT;B;9Y.4S#PJX:UPEP" G'"F
M*1/$4RF-L0!2I!RPBMJ*0.\*+1,.6A3E75#P-AOPB"CQJE'B19! .0(><R:!
MTH1@H#745EM(G')8Z)IK/A")D)!LWD9;M2$&Q7*6V'D_5]WV6&)-!M)&HV43
M#:?' !(R#J47Q&+B"3!8(&@$EE1Y3:Q!IE:;B< .AJCE&-DXVRC*;5/E=EDA
MU5!QB(#@U'G"#9"$$HF+*GBH&:DJ>U^A%8-9!R+Z>H1TG=;*IMR!F$Y>=3JY
M@5,5RQ0B7VV:K]J53U]<GQ\6%4YC5ZXL]"_VO5'&#"^'796'4]9=94&3EKV4
MBW-_?K:D=?+33U._#)^[KOBPU[-[E_TP%_\NCW_)^E=A9FZ^=%4O#^>*=3!7
ME_?*7X.Y#J7QB&-*C%;"0 B)T-XQ)8&J.5\K.E#B!\;#?;(DY9+8]<^-]9Q*
M (QBG!")O/8$2>B8I!Y9#&K.RO$.JUA/V$DR-[ARIM@"OGO3C/A 3"7/ RAK
M<.,?9>K9;#-AWCBA!/ :$ZVQA%P5?.X(P0J[BK#G"F4>=03>SF1SE*M6R-6*
MA,A@"+$&V&$$B?560&J5=L3X($5.U[MN!'6XV,[%5TWQKS=@+9X6HK#;][O#
M@1L9C0U:'-HV-Z2I'EOSC(:3@';!).Y]_>S4P)5,>.)_&[@RW#AM-6#)%$#"
M&XR)1T11Z[&GW#OBA0.D9JL!T(>.0F,!+X9=HA#76-,PI\0"X*SS3C,)/=%<
M: .0,RX8+I [KF#-)@H1+;+S8T!K'K[\J=^W?Z3=;C-LDN@?S4/W-9@0$[:8
MKAP 7 LE)0#8$R2P-%)RS+EFE#FE1<W6 D/;Z1Y%&6J%#"TA,!XC82A2QAA)
ME O_00HIP#GQSE'N:E;6VRHPKSB>\"G8?EGF;)*KZV;5$T8WI UNR!*&P(3E
MCGJF?^G.U?6H9FDV<BHX AQ;#STS1&@9P$XK$##.(\$$8;6:!JQ#68O*E6(@
M(4IP?6;(7.*JF/+8,B6XU\1XK9PFA H!F08B&/,U-\;$;>J/]1JC"+/;:\L'
M&VDOW7DB5[VO:;%ITQ,%-&JJI&-40#.8VL)P9FCS",1A&GC6?4Z_%3(Q>?Y(
M**;J2Z;K2*;+101"Q'%"F53$82BA!5!1HZ5! HAZ75[X2#O&8CH^CNMG-C<U
MG' C -!,:D44(YI3(BWRV'/I K;4W*H&LZJE5N74Q'J:U^*3+]7C9);1@V(\
MN#;=85%!7N'"(V^] U@3 2TA0DJ*-4?2AZ\*(%MS__DVF;4QXK5MTK5B4?*<
M.@:)TDYYXA@34B@G+0&$P^ YUAP-(RU:==9,NW(#W5!JLD-'#5(:%3Z++0]>
M/ITM;GGPLL8HQ_V>>;C.5UOD-&6((T80=@I(ZX62" AD5%4QXPHM%XQ;5-D3
M>Z-$H&@+4+P4%30E#AACE0&>,&>DD$X'Y]T8 05D]:Y_0:1%U4-;W1XE-BN(
MS0I6UV2D$FF0LMH0@!B%E$!<5$ HC[T%0F"K4$5\<+5;V5#>HN!)[#,21;?^
M/B.5<JHX8)8J#&005RR55(0ARP MEQ'CFEO.TT[[VRBV1/.3VL,URS9(:W0D
MYMEI:QHFVOZPR+"NFMQ;OX]R^V9S'LR?SMAZKA@E""&GB11>>2&)MY8+Z:%
M]4:$*.T(T6*D?X8!FF6L1<Q:UHR* %6K!3J=#E14>, I@$00")C"1!FC9?@D
M#*QYJR,*.P*W*"-8(QJMT22-Y0"UE@-L#-1CZ4>D=5RG\XRQ_CE5.NVF>1I^
M7-1NGEVHS%V$<RX;E%ME\@])T9<FOWG?$$^XF09D,W.&[9JJN- D\M6F^6JM
M=N<&0IOCIMY)]P[W&P+LT61JK,D4:?UZ:+TUYO$J2G(G:'E5K#4:K?O*W+=^
M]UO:^YIT^ZJ77*F;8M/L9D!HVQ1SS/8T9P7O$JF<SVG/#4[\?N9LFC_<+<1K
M:1Q1BDA-B.1<486\Y0 Y2SRS%4W!5MJ8!]%7MVM\!)37G8II;I[E&:B@1'H(
MJ;2ZV,6=(J49$-PP;X%U M3=DN@50D6[_-Q5V')[QH1)RP?-,ME>J2?4/&-F
MPAY?1MSQ$*.05 XA(!P D 1;17$++1#!H!$0,UWOFFO6P5O:-BU*5"LDZL7B
M8PGD+BAT*20GTDF%*)=$(4+"!TUMW<U]9(OJ[INIQYL?K@E,F V=G0YN-T/+
MM\^/:F9RJ9%F0\%R4VGTA]#'D+>("%!L:$"(8D5$A /+I)).(X'KK7#M4-@B
MRR$&0J( UVJE/"NMSJ(@;=A0 A5APDNM(%.0 \DIQ:1BG\(5&BJD WB+RM%C
M+&(Y0Z7<3N/63(G-X+;8<7KQ/DD3L+JIRK!0[H'""%A.N MN%*5.6HTYDI3Q
M>I?.2%#5ZK"A0!4#$MLF5RL3(L0]PX)@3[TFSBMAA0%$(6:XPH36NW>1:%,[
M@&:J] TT@%N%"7"[9T+FOKG>L"'IB-C(:073V>)&3DM8*_OA%\69OZ7YQ?YP
M$%[*94_ +4,0 R^1 @%NK6-2*@ P)]9+APRN:/6TTM[5"+5X?5UL 1>1HZG(
ML6*8H)A8 (3WF $BD)%,6Z4)T9I+)7!%B_O5]G%',L)$LGD[;M7&&A3+66NC
MCC#FX>*)!IMM34;81L-H$ZVL)T/6AD$18%%3#H/G"H &F#I%C"+ 20XJFA:L
M=#N #@)M[Z#9.,LI"F]3A?=%DFH1P1YPR9G3!!*@+:- "D2"1R20K=C:?K5M
M[21BKT=2UVF\;,ICB"GJN( Y\E7DJYBDGYF6E\?C;S<!-+-K0)OA\,6<XCQ\
ML>GH=V5G8V>T(UA@+1TCE&'I!&% :@X=D0S7W(&<MBC\'9/VVR9@JY<FI#A!
MW$-%+"1<:BTQXT8#KX7GWM=;K0=)B_83:J:N;U:+M >5><VV MIF;S;5-&^>
M6?%(]5(E! JG@/4,8$\1 =(+QQABV'("G1!5+6M7FU&'KV[Q=!3DURG(JY1:
M1H%0P'D@.";$:F$P]MYS)# %EIN:$]Q,M,AT:5T$HZY<]K*;RL:$=<QY;6(C
MV*E<6"4(6JB14;;PU S1""K,E*:8%EL\B6#1U-LB"K5HI57,6D<)KGV'UN?$
MU7O!-#9*.$&)]L&&H!HS1J4$3#!4K\V"X"LJ,MFTK=*$?'8L*-XX++4L:O(<
M?@7+P@O('21%K@5SY2B!EE@9L$4K6G/JI4-%+"J.4!&A8I,E>96X8 "GWCAI
MH.=$8ZB=HDP)813QWK(*-V2E[2<!:=%*ZKC88$V+#6+,)GI\F[.?IKT^R FC
M@&@5K"8;_G!/O"8X.(# :%]OD ;R#I<Q3A.E]I5([7(BRC1B GAK5%%;!JB"
MTEK%@V'AN1:LWEU+@XA*WJ(<<)MB,PT(PS33C6JFD]2NJ8HE#Y&O-LU7:P33
MS>RWU[^\3/-+5VP\4.RO6NCAH'Q<SQ0[KKX9.)<<]_/PD9:G^7?-\/5B^?,\
M#+*6]06W_+/7L_O3W#/MHDEI,4=84X,()%Q8X0"5G" @E35^7A?M>I"^[Z7=
M0+ELZ&;-/I]>.[OK+J_RFS#FUAA[<0W!M@G1:B2&&J,\L0HSR F!1F&I'-68
M&LX<@!6IH&J/Z55+3/2$FFR&18LU>D*1KUK#5]ON"9U=J,Q=!)O798/__I-
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
M"F*"%3&@0H!K<>%Y!XH6M=F. OQB 0ZC&<M'Q2J^>[JI,8*]R*"7DT? /9-
M$@R )01P@96R#E),BL":HFMRRV'0J*PJI!9%K7VBUCI=N9SH: X-ULQ*K#1A
M4$KEA+2(2Z^0$\*LR>^&I"E^=\,+"Y_UN)M6I?!3UA\,DJNL[].\7;YX0R.&
ML2EV(YS[DJ^_E&P]!:<*(&<(T[IHM4J\UZ384[Q(\7%K+:^T1.HH(@ =0=ON
MV[<HMQ#AXU7#QW)8@0W72#@H-=?$$BH( ,'Z*K8-EH9YL*8H NV0-NT='*%B
M0U#QF!N_?*:^,6BR^E=;!@\L\5)1I8P. FDU++;L=$10R1@AMFHKXEJB& AW
M(&QN%".*>K0*5F05+".DW/!BWQOGN)-$>2.8Y< ICBRVB,'*T'\-\1+1">^Y
MY3*ZQDC*!E'BE>ZONS&H:YB2B.2/Y-_,3#3+(J]K-)%)(D;42/YU9GL:EM@Y
MN7*9RH/ME[CKJZ(W]^!]<_,[S?2ZFNE3M6NJF@;6;9N_R&J1U6J>OQ;$@S<Z
MYLBFC9J_9C%BHZ>JH:9R4_:&/NB%>SB7!2.YDU@W"/<O=U2\ROIV:/)PZ)OK
M]J^*;6L::SJ_4N>SYHJ!I58N#YS*S,5>SWZZXYN#D>\U70RM/*&"$@P,)1P+
M"8E4PAMBD=),P365(*$.!54%G0TM*VB8SHQ25X?4K4K$$*+<..(Y@YPPQ@3W
M%B-L@4'>(+NN%AY%%X 6[6X71:P]H??5R(G'1AB"%5.:$V29U)A)$PY2X:Q4
ME2VUZFB7T>&\JL(M2L"K5#(KXFUEJ::<0.D4"5I 2L*0Y#286@Q!6\';M12"
MD ZAC5@WTTQ/L-ZDR4J<Q#/7[199E,(Q##?\W14YE<:Z@VV+4#0UF-,\_W+,
MAP'W?IEPX4/4<QH@A0F$J/ P&9008T^XH$A!S1!;FW/)1(MJUF.L-HKW6AW9
MN629&2: *E;_:D>HI0)@@K3S0DIKA'5K\F)Q!\G8A_(5R_(VIP=7(*:6  ^#
M6"H !0%$"J.X!UXZ9AQV5JS)B:8=0F 3'(TH@*]-F:Y B(3S!B'EA(.64,\5
M9HP[1ZSV*FB[BK55M7CKM".WJ6_K.AWYFKI+KL2%_\GU7*:ZI0NO[&7:2P=Y
M41OYS377CX_==Q8 IXUWJEMFD>F(*0,N[LVPY$-PE,)9#X60W 5?GC$=O(#@
M!@BAN)4!*M?DU)-@8;0H8QQ[;$4I7W<?B;E%&CN%L%4.0P0)PL'1QX) 2CQR
M1AA7T8>FI@RU;-,>$U&D8X?*EW6HG%]"*8 ,2P(808X8(I27VC,<'!2AK)25
M3:!K<.MY1[!&N/51]EZ?.EV5+!'H@<58>B$U<9 K2"0G1CL+,%=\7;EXUH&(
M;X,L;=JO7VO@+/9S:5 4L,E=WI8P!V[7R(XQ:S =UP?,:Z* L<01[+PVWNK@
M?$L.@A.NU[<+!(OMWR*&1 QI1.+^*<#0!ADF-;-0*T(TT<!IJCT7 CGFS;KZ
M18H.%K&U; 2,92,!K2P V&R_R"=1 1(6G!W),&?$6Z.<(UXP+ @00N.*!O[U
M['TA.J 9J<TH\-%"V%S7R*=$U6$@G:"$("((5DAH9J2 VCL6-+FK*)ZM9Z\-
MUJ&5S>&W2537&,*(*WC6*[_MZ P6R1_)O[7D;YAYWJC&/)%)(D8TSD9IQ59A
M=QTETY[I7[KD3;<_&'S7KAK*Z*HUQU5K<$+HJ.3PSX&_IS<7L(IAA##G"!*
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
MJ1RDR$IE"" :6F4]TA8[(#@'&B^Z? Y/)T?0;6X$/),2 6]!B_;?:)ABWF(
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
MHRSP8*G6##.ON6#:Y$0SZ4)H#N4_I-%+FZ8.'2C4[RGJ39M';]IL:8XX$D1
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
M$Y'_U5A"]_SYRY>O7NVVQ-M6W;R:3%PZ2FL83URKCW/_>HCUW4 MO(%8^P"
M!P0;[C>H!Z[@7@3R#\=<K%4*IK-(%Z12'235W0W^-Q1,OOQ2;:L[BY7TA7<?
M])>5/O^(*BHTEAAYSKR54N6.4^&#\21GI+$\AJV6Q_S]7;G3X.WTO)3'U/,_
M"FCU^X>%>);=_?^^V!3SBY]\!'R[B"N4[OKK^5VM_^FB]3_=T/J?#@2Y><9,
MM]#_7J)Y!"NBQ[$>QTX0QZC306**I5"!<<JU(@Y9YA&3+@].'A3'UGR5S6>:
MW!_82-YPI$D/:SVL];#V.&$-6RF"PLHJ'I@T7 FG#>;*"N<H:VY6LANL[<L"
MDZJWP'JHVK/\];ATZZ'4+8*0][EGG@9 (,X4QP;YV,-32X&UDJS!MB(+$"+=
M]1&)Q#U"]0C5(]3I(Y0-*G!"O2 !LR"]TD%0RQR82P0%9P^*4*UY?YCW@-4#
M5@]8CP"P%/>$$DR4 G\M>G9*>$>P"=RZG!&U?\#:E]7$*/G60.B B=:C9%/?
MO3U/)W27/8&ZD40]'ABWJXGNQ+O'%[\25".!0RZT4TP$KU3.+>9$*"<(D0V&
MV;WB5^\FQ=F"8<_&[F<]C@VJ#N8\XH%"['1@\)@&5R_(CT*0*36<<N(-S0VS
M7DBGN%0A>.$],E(?6)#WY6.%X1?OGO[+3R>16R3!^,=>K'NQ_F;$F@3J+<D9
M:&?$%.8*.VL<TSHV/<UU@Q^RNUCW*KB7U4<@JRT'"'+,,<FE$BIG'O1M;''H
M;8XU W.Z/I[HP0&"XQO..#^A^$$OM;W4/B@/0:WS0G!)2&!&(8,0%LJ"3J7*
M61$.++6]E=S+<"_##Y1AX!//+<.44,^8TA);:8(Q-G<A'EC:A@SWRK4S$?BN
M;75ZKHOA>))Z87[4L?-F-^+SIY='/1H>?E,%J\XAPT5.J$&4(>(T#SS^QO(
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
M$P#&*+ \XIO^R 5I]6S0IX;OC@P0V4"S.W-<S@4 \]Q'#K)(&0H^99$.<*Z
M^R4+V0)C[EUTJ:#!@B6G-63ZD,[53E%VS3Z0>E6V]M7VVW]ERW8GZ*%(PT[V
M/"A:\XZ[);%LMCKV>4Y;Q)5!G5"PI]0 $6B_$9'M\5![,7TIP@&UC_#(7DH=
MYO,-?9PJR VNSS!8G2A_I$/E9E)$/A!-<3&N3;(D)B[F=L)KL[P9N.;$&0AB
MA5F#)L!JO)VP[ >;?0]+2>1[QM(QZL:6]X_MLG!YG7K.8Q$9P1,L?"8E"W J
M09$7:4>+O.OU0M_RL#8X3]O+ [$?",- !LOPFPE9<B16TXA%C)'K@O%P0-#\
ML4-&JN,[&@B?L8^KF,:^XQ!]9'@V&9FNJ;JZ8>F^[I/QV%8/=@U.Y^G*T5 I
MB8+!+25#LNQZ1G;]O'8@QF$N95K?ZPY#W?Q2IGD@XBDF[SKV01H+O$5OV1U-
MFN%ZWGA$B$<MD]@!H:[E4LW0K(!8ZE[N:#+L0 ]TQS-5737UD6JKXT"CF/]A
MC7QSI!YR/ZB^,T[H/\R4!R]);&3B#78Q*NLJ'.PBW9@R]#GE%(YO# J#PH=U
M-$=TUO1P]GC7TWI$[ "CE?<>K6?/#CP]_%U/Z^>\ Z&LQQ!JFPNBYB]N.M:-
M47/5+\I_G?!6BT;AC@,V/EK?^&+YF(/?S/-] MZD\@>F_&7*!UP!/ZH*2P<I
M'WEIA&3G-NR\"7^>'S,7ZN(<Y<JX@R!J25\'A-D&U4E/ <0R<?=T -R\<N<A
M58P$Q,4 XC1JZIRPJ9\I-A]]5Z545!<%AL==3RG!<%%@D)I!@N$2-,.!W9?>
M+M0Q+[@/*_65E]0.6$[L+*_W*S#_FW3<7?L$U^\B?&CIN]QKL,C:N4?+^;WK
MC4V?:8Y'-9(I55Y$27: &XC7<%;4N#Y @?.]"/D)"IQO"X.>7L>PA=$^9,WS
MDU!S]0EED+E/3.1^;U>(L\=T-+9=8MNZ:7HCRS$MU[=&AC8VJ4>]SGI]9GMS
M<2]'_$>+R?;'U@K'+8>^=TTAE=JQQ5!JL$>0[L5N^@I+:1%'LS6+X.E6WW8,
MWQCYH)A<5[<[[^.J])6^E;[*&%^NUF9L&N/% @@7KKH.#@[I$>Y?>>*)%B']
M[3,@BX/'WX/8#!3=L.$/RWJYU($[N6([P+1VTTQX@8PY-MP -8YMZ XQ"?$=
M O]O>[[;6<I%V[\G90P<M>O.P#-5-5+$#^@?]4%^MQWSCGZ#/[8M:V22P%)U
MD^@Z(9[KVJKFC8CEVWK79>25=![";Q@-QOH%B>G+TX6\3KB2.IWD'W9#8Z4
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
MK31X=26!F#IBFUE NHIJ.?4FW(]KZ"UD%%-4T#:0.VQ@D2MG9OR$"+>8S]*
M0&1!2;'^ .$^EU3!@T@ Z:Y!VA*P*W'.P[ ,5GS^35.#]$R$ >V>W)2D/R@L
MQKD3!#HP 5N$_&=TGB5,V:+'S14L\6!NO#<8%A>2J$LO\3'[%*=-!<C1;\0\
M@X;*0ZJ62S-4P%,W8HJ P/HC!?V#7H>P =A>)<* C&NP//.]" K$+!D"G'8/
ML<@,6@@]+= 1G+2T"'/&NY0R_(/B9[^EX'\D#Y3?9MN,)=^FR7WG[&HXHAW&
M23'5 6_F&<*-+;9BYI6PI7%W(S5GA+QDI8O4:/VU8!NXYRC@M>8J#5U3W2WC
M;;FI6CL8KSMU<EO,*J4 L$>=#XH/U0'7]:^%,0+T8EAUB2/17!?47,(ON=4
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
M7HMCL)P%66,A.6@>['6!ZS3S>!I'=016!*;G3[^6AV8KJG>5'9R;!*;( +.
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
M%V/^I8]) I1Y-F]:T;H_>]/!BKG//Q=3EZ:LDRXNB3OHH25T[C;S.08*>S+
M^]/#H.6!,(/?NL\^3M(IB<J7L/GJV;,WVNC7/V._7?,00YG!'*Y<)-05"6"H
MX U$]^0A6T+-VO;_.DG+-C@SF/.IJ.P0=M-%$LM,\0SD=R*&SLYKS[E+7;YK
M^:LF))[-0:>;.7^EX% LXVW;U23*)*7!7Y[]Z=/G]Q_^NXM?)<7=)/*K<:>W
M[@MUH.!_+P43EO.5LW455P4#PQS@XXEG=Z Q2=Q@-<-7C@7J0,JG^#RF3 WX
M]&?%;[*Q][P@F)OJG74DZIC1LS<@;CX"&XOJP4R\20R$O'VH"NN!QBX+Z[U2
MQ&R4+]QP <X>0(4%E*ELH8J#)0T*XQ]FS.R!(60F\.V7OU[_*[25^(6'O@:L
MA[P)N XQZFZ7O81O@UN2Y27I;FD,!I6;FZ;7<Y^D/[*<_X*W(_Q<Z!(; @U\
MG[2=3VR<#X'9(I@&V.%PRNPQ_GY*_9!4%JO#X T:/B_XN] CL"GT"]"Z#\JL
M2+T)>C%>E!3^E<N5LV@,72Y@ ?=N@7+@4X!IB,%7$;X5!=,%\VZ^!_-02.6*
ME"],$S>$]95/[[CQYI^#[2TMLKA,D#)AODJ"JTE2P*B2F2 C\X7 4<I) 2A&
M-L!(P/Z&-(8&87HIY>1J\;;^?,C='$$2M'GE'"MP5*R&EC-81+!5!U%0EFB.
M(.JFG%_[7;S%*Y)=D:MR""5(;PBY*5$JR-RB+EI?5%/*=>RG2>BSR83@5XHY
MP "SARRGTVP@,(./YIM %VW*/BA2I#IXQTG*(=-XGI,?[&/HP9M0[T?$9LM\
M79+]4-B/C&#9' 207L UOV)L],!!6"&L\L)+7*&\S<&(/H!K2OW2X0C3I4P?
M*N]:T&7.;M4TZ.W$"PFZM:43"@:P *$B&3R)_0F%H7+,H?.**ZL\:Y,"Q-JE
MY2JO?IS1.$N$ ((33=&\<0AQB'POA5JH@(R+'8G+^<]SC;54N<KH](&\ XX1
MUJ24"R9AE4(@(!<PF0Q<)AIS55"K"/1%0;-S50$Z "@2A]E42"E_"I[6 SA
M5V"$A5RDB= ]W*T=*+<I<:^@Z:O;I'J&/<4%K*&%I @7&+DU2REW5K$U\:K
M-XW_D3S \D)@7/&!:B4Q> M-^OT=]."-&$N1,08HX5<8)G12"@#G%_/O<0(H
MC#%;?=^FC.<-ZG2RAO&TLT=D ?UG$<YFT,Q]"$*'[U7U6S^@\@42 L3^(#'X
M!%/@E'+#^0BZ"K#!I @IG<2@"MC*]*X]I'+N01%[M?"0.Q)&+-24<%/49+%
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
M6(YF43^RFY'*AZ^?WGWX_/W;]>\"=-D# &PZ8..HZEAFX"\P8_VBKGE)XKC
M2GGE.U."+(])[-&7 PYC^,G%OOC8&LB?T92PDGDP8?0X<BSYETP3@18O*6;H
M#N!D^"S8?&B689FXLOBA$)()G2)VH!643_1J>''#IDP*#BTI>;=(ND-7O:M)
ML;3\W8)^;?NO"[\^BY)X=5&\KIWOO1?&.V@QK$-41>M<#RVWE=L4HUG2],;-
M'Z.2FAC.HZK5'*3.]+$+H$O(2<A=%N0.6I5_NTCIKP>\<?'X=W;NN\>]%U>[
M8 6S02' /NJ6GMRS*Y';#^0N*0\HD7LTY.Z]T-QN(%U6+E!RLP_<W(L>6EXZ
M\'R$^- ^W"YE!%>P:$4IP2,N)QY15^)TI5A64;7/%\KM87K.P!SWY6ZMOEX-
MUW,DG_!2T3T <#P>VN>*OTWGV)>[07L.9*F2V4-CX.A.[Q$C5?+%JN21.NS+
MI>52)4N5W .)L :6.>H]8J1*OEB5K)F:U,G=$SQFF&9]18E5\UM3Z? DS#S^
M1N(>:M3TL4K-*L;K@Y$S[C'#3VLX) 2/ 4&]-_9CQRI?Y^#-2R@?19M:3E^<
M<:E-GR0$#:<W06NI3264'P-E3=5ZS.XGK$N/W_ECJRFNU)C#OFQI]$9AGC)P
ML5M-@Y,?]#^U]M^E5LBYALV/0P%-[RZ[U0O5L,?2*2<?[+F(3N^<JKTCOKL,
MUQD#_MS7%1<B.=+H;$J!T<#2^Y+T*&W.Z25'VIRS [RT.;V0'&ES-J6 -1B9
M?=T#EC;GW,=UP$*1JT!MC[J*19XQIH\<\>-_MPM(*FM+\/B;E)&,2'K;+B;9
M7>1Q@Z)$CZ\T.4O#*4G#Z*%1<Y(HFC57-+)[A*(.6$DS,>"J&!B.O%U5,E/N
MEU:6%"6T-JXOR4IJ04L15J":TGLL-[6DYN2[+__UZ?V5YI1]_)TJ+HU">D=Q
M/!,"?V? J#  ),<Y?BS&Z[-IBC):V02+7*VF;4F*<J1^0<N27HSM6<X:H$"
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
MK9H"1GP8UD]\1:2<\D0^3H6NRZU9]J>X<%70Y-KW0YXG&ST,&&TY%7A3#2K
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
M8/SU*R7,X7,//OJ8P 0SFMXA^G/J36(PO+</0Q@2-O?FIK0UB/S[)(U\L'9
MX.[/:MDH.;$23 8C2P-5^%T4)?<9!\$+1M&DR. UT!?TIT=G.7(%[ZH'!9.]
M?+6$<@M$W<R9$4Z&%^3L_=V]F[4.3<O_*5V!IF?W:X<UW'YO>,6.]&/]Y]V;
M'JUONN4'=S@02X0!<4%3P8\6^I=X6_,/-VQZ&RATC>4&I.(/+A4?4"JZG*2N
M)4'W,J']Y "LWC;904)+0NO_;^]+N]M&CK7_2L>QWRO= W$(;I+LQ.?06CS,
M>"1%DN_D?KH'))HB8A#@8)',_/JWJA<L)$""%!> ZIR))&/K[:GJZNJJI]\B
MM+96Z^*]E.DEV,Q<L@J=RT8:O=GREH[?JI1$!Z@\4L99V37':\F6%$8KC]',
M<Q@51K>*T49),?J>7(P,YXFJ@3[P@?Y0X8'>IGF6# ,ONC^7,R2?+\7>P)[6
M!*\X!&&7%2C2DQG!"[OHPLT<XI#7J(YV=I81CU :;.Q<\U8%L=NKP'8!=][,
M.NVT['@KTK*,8(#2-*L$@'VS*K:M-1H5A/S> 7/ %=BRBFUET6N5'6]*Q2H5
MNVZC=*W3R6"S*@TVE(H],!7;U&L57#5M0\7NR@^RG/$_KT6I\**]#]JNM]XV
M<(K(+N1Q(_['SZU.!I%N"09XG_I? 6Z+@.O4,C97RPNX:MC8"K%;1&PSZXBE
M$@RP4I$'"KA."9P12D4JQ!9'K-ZL%&(/747NNNC7GCR7._.>E<!GL&=-N"]O
MP7I9V=ON_'+4:H/,!]5R.F^_W:=:LUV^!>(&>1Z4A*Q+*W08 ,\YRJ>2 *^F
MY7\0$J+FD/QVM[5V)R,ZOMRP4W.(FD/4'*+F$#6'E$/$M-/S_<?'J#GD<&JU
M1::Y7/]9HW8H=M .7&OX,\VXI4A5%*G*;A*#EWQZP><+%[$;<@U6G9P[94]8
M/B0ZCI+C73&]5!=:BNEEHXU6+!JK?EHQO52;7$%A5#&]E!VC924 44PO;V2@
M%=/+]IE>?A6$VWOWD>W=3WJ8VP2O;%1#:S?W'W]83G=_J1%;V1S95FW_J2:E
M<,T?"EZ4BEW<*%T[TS/.URL--I2*/305VU!D6H>%%Z5B%S?J-,M_5!ID* 5[
M: KVO 0Y6Z50L+OR@JR?7_>PPO%<>Q]3E<"[31H8L,/WO_0LA7M906Y'+ ?M
M$C@[%,V!@NP*^>C::6O_W@JE)=\0Y#JGBB]+0;92D-6U>B?C</L2#/$;U9*'
M0@?3.%,6X[Z<"BJ=:V65KM(P%1W,WJ>9@Y"0DAE$*I7_D&S_@Y 0-8?DMUO1
MP2@)47-(10"NYA UAY11Q!0=S"%(2(EJI>A@RC9-S+C6\&=Q.A@S.\/KWZ$?
M6,,IU/AQ1(GE##QJ^/@'&;JN27SJ/5L#"F 8C!QH^-.4^(9-?>(.R7N]=D;&
MEFU;KJ,1UR/-Q@<-WPS@2T/+\P/B6S_)F+,@P N8S0R#,IX8'C5)X"YZL$%>
M#)^8GO5,'=*?1C7SL0 8FE%<CY%(DF+!0='5+[>_=O_".\I?(8JH1F3.E?B4
M+-@DK?J'=.M&ACU<TJ[$(PUBAA1JX#U1>XI/Q5^.*NV&'ND.!N&E$5!R?@IF
M$[E^>%RI ?QCO.%Q"8WS#QL;F1K7.>1Q9,7=PX9KXEECP[.@>=C45!-9Q45#
MH?8:WC4(_ L01@"/U FT9(^(%O,WM+FZ04D N"DU/#*A\+?)2H2KSL":&#;K
M8-X'^#1([@L@!NH?,)#[ 3P"'^MCQ46W,[P SKVQY1BBBU]<[P<\B\>,^;59
M:1*"EB=D QLJQQ3,Z!.!7GFRG)/ G<B4:G%%*AEV,6)C^G)_=WUG/-$OT!L_
MNO!#ZA-6P,Q#UZX+M8XT7)IE*5F[[-=OPG&?>JR0!1F@\"54I<78H33"KFBH
M/:QA*I_\;"Z=W'&]L6'+A_#ST;5WGQM@TF"Y6>T059E &T[ZV%$GQA"J^I$8
M]HLQ]7-Z,];,?QMY\AM\,)BJ)W6V79+H1&F]B6L _)&H.MM9D=.!9+G*F"GD
MK20DWLU )WMP?J6&F3NV44,8& TR\NCP[^_^VKNYO/I7UGBE\G=EO;VG_E%=
M(_C?\3)F (T/ZZ)1%0-H@8!9 W'M&52"X22&FN$K\ S''\(5O.Y0:$_/,>G/
M:+R-Q$26G!E%9R6E;E8PX_Y,]='BZ6]9?V4T[]WGN]L'8H0@P4Q'U(BH_4-2
MGX,2L4T8.4K23X.V<LUP$/CP:8\IIH2JI<@91%(\($PC\9F1XF2'[]FV^^*3
M(Z;9W="')T#JZ,\!G02Q#0$*$J48X.0??\SOQCGS8>YV)1CE8DZYK*W'C?/*
M;94.:1M<6YGF:+Z K$8"ETL!5R+.K7DC._]JEH&^A>%?91VL *< IP"W0]V\
MJI,J%?RRV3EHE4"IW7/9[(=:ZX#52P$:N#+JEM<&-BKD'A1R<\CA%')WAMR-
M,XAM$+GY='%JV ]XV//)XZHS[-LV]M8ADELP1)\O7=#E4-)>UQVOX!;8'QW'
MHE[-"#C877=NABEA4?.:6N<L(Z.P9(C9@[:N#I*W687M _#\O%99_!5M8T8@
M0,D:6 H@*Y4L6#];IYF+JE(A1JGD@U7).>&\U0"@TLE*)V]!)+2&WBH]8I1.
M/EB=W#JO981_5P-_VU7)NW33+*<.6-2^'OK+'!8<9-@E&<S=[SAN@(JDC&0D
M"V>/#-:(THSV?B<-A;\=X*]>*XOMLB9Y214,>87D'2#Y__WUK*'KGTH\Y$J=
M'CP(R^,=4>I4(5D9IH>'O]T7_EK*O*KXDTNC,??IME@OZWSOJ=C[5O_K\#E4
MU6>^FQYH:J?ULK@UM\AML??*5D5R2F=4;1KP99X*7T^$4<5UQ8%(CIISBO9
MF<)KU)RS?\E1<T[E *_FG%)(CIIS"HN@UFADG$A1!3"J.:?T]=HBD]\B4+?.
MLTXRKC"F=^SPX[_3#']D*4F/N8SH*"(GFJ,CLC#^*,EX]UZO-5(,?^WZ!RVB
M*WH]Q9]@B3.<F$8.;IDB3RU-B]<+1L;  #$Y;7TBYZB$186QN+[E0'$O5C"2
MG6?@[4&*T1"^&80!1:HX1IB7Y++K.00A$K"&2N(_3LI$!ZYCDC]#P\/"(G9"
MY&!RZ!/TW3/R^5G0Y %^O#^-*B8(GK!S;6ML"2(Y,C!"GS^(WX_IH?QP,H$O
M#48&%.W;[HOIOCBU^>%]U>BO17-U8?B6XS("JB=C#'VWC.EJ,/O"ELFN%G)<
M+>DRQ6I54<Z7@NJXZEP*BF1( 6ZSGU]81.%B=H5K5J'<>TH:%.66HMQ2Q$6*
M<JL$X5$*N>5 KJ+<VC=RR\R]I"BWWN2P*\HM1;FU_XV10]\OW$0 BJ[56V5)
MR"OKQE_)H5QM,H'3=M8Y7-7 7]$VEB7VH^1 5CJ97>QHIWI9-K.52BY=%;8/
MP/9YK2RY>$HE*Y5< HG06UJSH71RI:%<;9W<T)NUS$V"*@!PNTIYEXX:1;JU
M622]$6Z#CG;>+&O,]1NG-W@K$&RT:F?50V#5S'D%Y1U N:6U3\N:1*:TZ=N
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
MV3CL2\]ZEDRCT6GC+X8O3BJ'<32< 26#$3N/G,=DFW%\-)*=&B)"6G8<WKG
M"CA3YI4X_>1CC<?4(Q<CBP[)U4\Z"%F+;X=#:\#/R^Y./,OFM4=&TLG$<W]:
M8RC-GF(O1,'H,ES[-L#CR(?&(' ]%@P>>%8_9!',DN\T:@Z&?HOSR]FQWX[/
MZRP#CW$LQ'V33CPZL-+W9YIMC2<V13I7V7)B$(>^D*O[.^)/_8".95?(X\]7
MBS5>BJ%71GCW'.@%2HZ^N;Y_' 5HQ_<M<=_&^]LC1%7AV,LUJ@K'5N'8;V"'
M1(5CJS%]8W&[:E@/<ECGEA$J'+L\V\HJ'%OI-25-2XHH7,RV VB5-&VU&H<J
M32HP] T.>D55J H,50*C!&;3Q2PM:O/%%2JR<+$J,+3HG</399MS(*APNLWN
MG;>U>E.%TY4S<D(A>97F'9UI[78&WUXUH%RTE1G<IB5K8"EDHMH!37K[+(OJ
MM&0#K4+SJEZ%'2!95T#>?P,5D%]O733?0MC_>M;%W.J._]YXE.EMZ!%W-J O
M&5;:K'52<:5Z>Z,$OWA0O '%M&MZNIBS\P]Q8*;E$!@<GYTI/[0"XCH$[XM0
M3)_Y+S 6%8H,+,.VI[+7W.'0IP'I3UDA&4S%R2+B?HAYCD-/!KW.$0;G-3+)
M*;Q&0*>(1?QR?W=]9SS1+U"]'UWX$:%Y8%/#8R >?4*NXR?+.0G<B?3SB"O2
MK< NQG#-*N+:=0/J1=]/1RBF:YC]@9MPW*=>JI(9+JNL<-1<!Y9&V!6-^-2S
MABEWUMF<-\MQO;%AI\-9Q;5WG]$KSCF("[2$]7;4B E<.>GCI1-C"$WX2 S[
MQ9CZ*?'_V\B3SPLOK>C .CIT,@;K(VE-?O*[R:XF(]$:Y@B:#1O-T$_BUKL9
M"NB\IOU*#3-WE!/-81 UR,BCP[^_^VOOYO+J7\L#B46=O*?^45TC^-_Q,A>E
MQ@=XT?BF(Y/YM6?#LPPG,>@,:8%G.#[&CN-UAT*+>HY)?T8C;Z2D;E[RYB1Q
M%X'6/10+Z@<:<6@0A5?_@6'D T22B==!,?&GHB!S4"V@EEM1G/1JRCCWD^>-
MN2_*OLG-"A A]H\CRT]ITKD"X/Y,;/QLX/^#11V#7$ M0;]?&P/+MH)IC5R[
MMNV^2!W\C]">BFEC3!USS,/ V*W,]QGS.HOJ]^B?H26Z8&Q _0Q4^&'@!]!>
M_#S(KL<*8JTS @*""PUXW] :[;H&@B8[ ]Z;P*0PL":8G#$&D0S()/3\$% I
M&P>M'_NR9G&E,^M(NE%3;MP::42.>)]2N!)0TJZ1WER'1E.T&5)>+.MCT<JH
M-3Q]! PXG\_OXC,PSU%"G6?+<QTLNAR)!YBID2\,+DOD$"8*(K:AKRD#_$M)
M\#?.SPM]2X(@C7Y*;);U(D\D0&BEBK!\.4SP;>@(S!@9L/ #@KD3U(];"::*
M"S;9]]IO->*'?=\R+3SZ0)P-X%,\S8#\&8*APT]"8,!BQ0/*1"$&8-[X01T<
M<@'"+YX56/Z(3' *@8&A'C_>X0GD !J)CWRO/=2("?)F>*6 @\@^>31^4E\"
M@G=Y$A4"#X'Q<^YX@%PL, U:JTMC$*4=JD>'0SI@V4;X,28A[(7:*=B)2?@8
M3J)4B8@^=2B:IDL*;W"XU1J%"C]JM&KG'XY+,1PW,''TD@D_N4<[S&PR1L+<
M15,?U$]H1UK;Z+O/E&EICTY<+XCF/%9.H8%LULXCJSXR^ST\EZ1YCIE#Q+3L
M$#_LCV  9T:2E8:M89_JS.30'<%'.F?'\U]9.LKILSJ2?\=C-WMY41^F.ID-
MJHD"P/+*/A(0:2;/:/=\LV *,'%>055V84QP ,D]]4&K#*B?80O/P"FO6EE0
MRHZK,D#/7,.LO<J7WGV^7C+8&M.+ _PXMHS]@=,=K/]A O/!0K99!F)B\=JH
MG45B-O3<,;FD XI+%=+4-9'7^ <566JYZK4)9GHP HU13WP.]'%N531\D1\F
M@P#BH)0OXC)U1.T\19]WR,NJ(Y,EY/F)?@:J'I@@(GQ\3,QMP\@$PR1.:V@-
MT-*1"94&4UPX/<O1@37ZLR6GLHPBA-2>QD.S3,P-/R6U6 KOU-#GQ_/D%J.W
M8O?%4J']N+&^OYQU&\PW:KXPZ=(JE+&X;H)B:L6Y-%LQRHR\?+B[_F;YP2-+
MCYQQ2D7^JMS0@_2:L]G!FLPZY0)WDN5TS/*T974^K[]P?N _H)%GS/6!]G2C
M\VDEIV*ZPD88N-D5+EJ[&!I_9$]U,S-9;3,.0H6QMXLQ81^G\M398G ,X+/^
M$Z6DPQ25L'KP"6;BG/39')J9!L_?:BFP*K"^'JR7=$C9P7CQF@J]^>BT,=T7
M!Y$6FUUB@0N0/L%UDGBE3W&V1<B#??*?Z*"_Y2?I*< JP*X,V*OQQ':G%'5L
M .8^PG+ 77J 0 J+ !S]Q &9B6VGV%E'<:!LFC@TDKGOHO=3")Y9CRCX*OBN
M#]^>\PRH=3TKS1_4C.=S),GQH:_1)<V6OBZR^]AV]#@[JI3ONHJS45/KLY0#
M1&%4871EC'8' ]Q7P0W]*1OIA#F@QY$"$?I0K4H?N-R"L<;"_0UP-V'E#Y_"
MG0Y?(5,A\U7(]$(\Q=DR^KA]AUH4UTQ\OR=Y-<7-UDQ9  FH&N)[,8.:Q?2O
M(TP#IG_G*=3((VYX=P?!6L1IVQ*![;G+YGUSB[^HA/$M"&/Z>0'"I(,M?W\G
M0P1BU+Y.+%+S0<5 F(1A-A"W!,6-@C$#CIL Y#J07-*NU7UU\7;&"JZZSD+8
M9P$_1Z(S$@[Y[QD!6+#[J12W4MPKR7YB.9!RD$3F56O>P9**#'YV[7#,UZI+
MHG07R\2:DX'"LL)RC.5L=W<J:*$QBV8#'=[H[V:6S**8=(#R3)QK'I@5P!7
MUP=XOA<Q=Z7+V,OIDS7 :-G!B+D1 ;04G>">Z^!UPPN8EN8*&__BD7%@!+&X
M7<NQQH ,8EJ^%T[0SF&?F'BN&?+ELA'P.!1D^38& ?2N$V*D2NA1+\OSLRDI
M6"EHBEVT')-B&/L)&_,T#!C<WFTQ\@='SY^)E_F8"K$DMRR<AT>/,6/2M+ 7
MQ<[<^\Y9L8#9>>_P^]-6\=CU*,CV*ED%R^%CP(.SJ(C'PT)"W";![\*Z[\7U
M?K!DGC]#:\+BJ_F-%ZB%:Z?NY)3" S99 1//0J9R@/+*'.^[#.FZMAS#&2P<
MV*Q'>"#5^[-./##X__=Z(S'*T#06WS4W_V1%; F2=PW]5A,>V6I/M40WXBZN
M,<6!XV.)CJZ1:[-8?#XGNMA4=_"#6+Z/+C(6P8?2S:^FECL3VW#\O([.Z^1U
M$JGRT[,2:_]7)%A5+[VJE9E>E>SG_#2J[/2KV'42IU8M3IV:2;Q:.Y<JE:XU
MGUBU=EK5VTBJRD^ARMLL*11>G%7AF9!C&=Y,'D+T=UO4&4Q7#8I_L-#[#L//
MLW7J+"I]9#QC> EU4,\;+,X5[1/#FZ*>,NF31Z'_^U.>TG3[/[W+$_T<%!OT
MT]@:R&FE!X8)&,)!%&$U=EE*$DJN/<TK"+[Z9+M]F'_]<#*!6H'1A+E5J U]
M+6%U^2-K,L'Z#%P_2-V1^3YRA- "X_L5EC.TF>K$Y!)87<!'X8>L<-=&K?_$
M=AY\Z!2PIUQH#]I5O!D^K[#19U.A#PN9EY'!HOIQ<M3PO2FSPBR'+V$&!DPQ
M)(0N]C#U2H2GQX:<7)R+%O,2^4-#/F'!55 "/V@0U?(K3"K\K=!!QQE%BPI;
MS7J0^\=P6P6#X7F^@1^EM $$J.? -V4<LRN< ZZ+;WG/UH#*X&[+<=F?3\:8
M)U&9 !JT?+5D)EO47)_9JF#1PG<!M3Z?-9_8<3X< C"?/O&O8\]#88;H@H$=
MFG)N!7&&IV2*FS1FI$D&18@O4O;]3:>(_(%HM"V*"2DC:57GQMY#Y4=P@X?H
MH[7( ,P>&]KNBQ_55<[B&?':7#(2:7C&LV'9;&G)\AORL_Q@+K!M&78.PB)4
M ,;CB*P'-B*4LF9(!,SVJ$,I'CG#T49%@S/L7R:_XEO$CK(M1.H=VV*&JGI,
M?*(T0JR[ QU-@A=J0Y]R<TD"^<8-T/R)<A%9,!#K_B&'&)A<L5,8H1OE/?HS
M(H/+*"G-4"=,=8RECKV>R.L,[8"=G"0E9O:3\9>@/J'SPW%?Y+%*:\.MJ$J?
M'6.L^I<('"O3'#CD=P-6G41O:K%V9X835Y/<F/_F&KR3'N@@9'JCBQJ>">$3
M1L$X4CKS@!B,Q*UOE(_E5T#"A'S[=D&.\#VVM*]_PKO48__0/QTG,PFS/RS
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
M!+5K(O.DWUT!+#ASLZZ'H*C!.@XE1.?E@)&JPG6S,"W:]L'TLBO ]7#7-U)
M##Q@EL*OU]WY8)O]=A+16F;7W<D,1I/\V2*S<'KC2:L]:Q^,Z+&O ^2GRZM>
MB@J_2 4YLP=S'G-F=P71MMMK;6=#I3O&\^/CQ<1N0K"W,B2KJVE$B3$+INX,
MASO31U]UH\X<KP#N]3-.6IQ'^5I#VJ0-!MXMBX<YJ4D>%_EP.+;]TL<"[DLV
M_/R6BU6E"+;:B7W5$EJO51E,V'2#H2O8M&<J=34ST3I-==![</_)]5TE P^_
M/6_4DJSFF]95<=1G'Z# 2[N"M&4_0\&SP:V-K<.";J7\YN,\DN*1L\&+P'0G
MY9>74\*-!R+PB8O5/=_\JJ,\'U3"V: 0SH:RM)?KTI9WA8^-W5%!]U>4]A4
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
M!5-:C$(6;+';\:0@OO5)U^/BJ=</D0L%RE*N&J5;0I3!Z+;8!.SR[0OKW(P
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
M:O/5!B%,@^>#_N>#3>8]#S(^.S_I8GFC$GL"8^!:C(I@B9U.CB%UCR21?L@
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
MYJ# FI%LL+9/,/K[A/[K%Z">@P1<.!,+%=J+S,NTC)$&_M-3->U3]PR\.,9
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
M0@&-[77Q!,ML;^H/I%!PE2QUB=>)#3?N'#J8O?_503N*S#D'/D;DL5C?/$<
M;_(Q5W;5N5%")1>?WVEW?6!BY)U,2;3ETN*=DK@$N\/IE>N&?/^R8V6JJLON
M>RNGJ[J?G@[TY#DWPY$"?C(RPP=PME6>W@-Y9.6'HG5."#=A-HI1;6H@;P-Y
MCG5=P5Q0\@5:3?J']GJ^W4?Z]"W0X>$%!V6TC__Q,=$2\*-.;>BYIA-B1Y)!
M4=*-\4@'QG6UV ?VJAS1R7!C=O&"ZN*E$/Z);[TIARV$#0"FA61[3>$1\Q!R
M$1"8";G^8\NA07?:3MVW\'VQP><WFW .KHWBXCJ_W*9V1P#=?]5!_@V$]FFR
M1,@2ZXD_.Z)UU3VMH:[=A(,6:,/CS<R5[-GR=.S6D;4'1<V6=]^GQ8I;)NM_
MV'2Y\WFT\^':>[015BBBE%'4=(]->S4# J_&(^06".<Q>N9O\N**G#@\0=)N
M,JPHHEY@1=8B?%97^6KY%6/\,V6!H:L"\UZMXA'+\.>4NY'XGH6'O00 O7#E
M\#.^;&\YIH1/2B&)8]9UA-$J49':^P/!\3F^C(RJ*D)&'Q+;RD&D0B-<N>7
MK8-#RGY2JK((,E/7"T4H)5QWHS;-=+QC#1Q(Y%;"V?#Z.K1GG&^%>CD%\4A>
M@?Z PA\G<\05VQT&Y;*\5NX6_[!/4\2ZX'+W].YL$=#G:H^GPMH?.W:'5IHL
M-7: ]<AD!+'TMQP/>*.AP)Y7TE&A8$3%.6GB"2DG($W>:Y?N0:H<EK-3!:+6
M-*0DZ(-'>5= 0:5!O;PM34@OK0X[=5R6X3=L3J1"LT"NU(\<N)\Q6HEB;]VB
M\</CG<>SXENT7-@*+SZ3M9= ":_;X7?3($OR0H5)]T'3:&_WN37>KL8V3"?_
M1+.*8LDZYQ?/Q\C47F05!!M[Q<:R.ZSF[-^%LG\Q#A4[O]H&Q?DHU^W3J+FU
M:Y#LJJB9T832Z:5ZZ"4;E-NCWDE7W(,,[S'X_3E W[L3(ZVFS%-B8)+2*V):
MDY%R AJBUDC0QMZDWFF7\/)G,A),<7^VC98N-C<LBJS16""9W1F@@Y4)2C>S
MTB74WE?0U3EU,T>)7T7Q[8C Q98U)9[!Z9%(.1!L.*)2JXZ:MTF&N&>Z#-:>
M,]"]3JHKGY](#8DWSYM)OD?[73-BN&O='/2^M[.E4K)6S/E17;@-I7".^\S-
M+2L^A<)I;NX-<+/_(#7-Y_.>N=_T;A;8@D8/DSY\[)C/.[")_#7VT9EF!G5/
M?]WCV$Q$O]FG:>IZZ@^I"R(JS PL3)Z?+U\+KMOSR!0@(Y6/%BVYX*P0E@J,
M!A(B7-;IKUU@B;ELBT)1 DL27$GQ%A R()@Y/H2:>7(_32KGQ_9@.U(/5:P^
M,\3G(8$<ZPKT5V?<J8$F#O+W.IW_U0"?)Q[(;1@BTA7)0"FJ[G%=?L!N@6/'
M4IA$P SR*P*L5ETD'(KRU,MU^,2FJUG="0!1KY%4=,8+[4BYO$]#Q:T>D"3O
MN#7%/Q2@,_1[F^>_M0'[MPSO.5CL?)E3ML]:81KE;8L"-;"=]\<D^7^RD)T?
M6V4Y8%4GUDJ@T4>:!3C@]9#X.A)D1;[ZM?1[9UMQCIZ <5S*H1^X3"6/%*>]
M,E^'-Y4-;3 Y*IV2I.*@^A;(W5RXT6GS:%2VI]%:[_^G&BCYBQJ(.7!E4@'K
MR"JN7-Z BAS!6WWJ\\"QS)5,-*)J"@?O02@_!R(67,WMN3C>'-^E2%"S>\JA
MM6.N/?U]3 :#\H?W::I,2=+M+?4:J_XT-BVF)-LZ*JMJ;'*$5'FF"QWLAIG\
M+@0JWQ3E9]7?R%'GB?],F7X07:]06,MWN+8;Q_;9\%%J;QTW=)H]9"E5R&=H
M:7*K]Z$,^BZO]=174DX4"KRKP(S7GC\2J*[;JJ$F_H*[M^2:*SWLJ=H99%\6
M+RS(.X5FC_1(;_:!PGTJS3.8#L<61<9/I]*4 Y^QQ RBKKDA:<\LBPVFKQRT
MVIV>^,^#"0X^IJ Q:394RA()G%[F:)\A+ VT2RR#KR=_R16EY0*U029SGNF]
MW<)Z,,H.X]#?-5FCCL,Q<%=#7\)( /ZCD0P;5TYRK:%37TY.(ZR'('_^[.YM
M13ELAZD65*@'"@KR.L,]^,IF%+75*ME0K[%2PF30UX@X98C9SDG3=HQOB:SP
MQD9=;$WB @4/[U3R$2QN>0TR;#"L(VEZL$_F>$B$B2?ITSCF(S[-J8&'X2D"
M&-CZ%H]O\]V^Y%Q.OS+L=/@X74-.<]QH;IV/?!U@0 \#7V=N07)0H%ZN'#9=
MJ)@#?ONY",$[G+',W*.G8F7_W\;,/_TC!TCV@<JG=O[PF-A_HLZ6BBUL-A7*
MT '2K$WR75\[#*B<RED^H9P[+4F\B(I '6//X[5I>Q;DSZU9H$G%&!Q;5)(#
MYZ%.%9=16NK'*=1PE"KP<5OU;2[WF=KP.P@CL:[&YO6!M=:&A3AD>B[RQPNC
M"##+L<D76SVG&4FSMT%JW";]RI_1=SEVWN7<)<^[8>(<C!^_/E]UJ=Q'YODS
M).L,0,*2ZXV]@S>]P46>\E:C!]RLGHKPE=:9M%Q,FU=Q<.W,9WA(TK,SUBC.
M<B_WS.^\_3G+IZG0PWLSRZGF)]+I=KV0Y\0I[?A_I6"3;[O UZ->-^Y=/>,G
M,=VYBP>/GC/)Q*!]M-+$L\8-GWJS%CT_!@FS?.5A^WJ/PN&TTJ6R]P&DX/1J
M,'*F?N>&3-<^#=TRH;WNW&]-R&XADPO_ G:197HW>92)QA=,3@,QNF>8P6-$
MR2.79KB!3=GF.HVCJ&06LBZ0C2B*6>J.^5#VRB>>1U>#),O%?UG&I[LT1OL"
M*1UB_,Q<ZQ%7;Z%<+&LF+0J$,7WXK<[A_.WICOBHIRN5H<8,,O?J"0^>5+Y.
ML, CTZZ1[CXZI.SRP#@>4=5L6CM8Y>L($2?868X474=_;I& 5"DQ$$*G=EH?
M"!)$>?!KQ0(&=BEZ<%ML1O[0:!:&IO=;<-'!0GWQ;S?Y(_%AWDHC$FN)4<52
M\ZY7H=@.2,JWH<$6:H)^$@F7?^0RX^!ZVJO5?>)<K0MN)./QK0:C;.?3O5;L
MD1&89]#H+KZXE'Z*GT,9#VG)CXH >%6,'I@WYXYU711@E(I)%Y]-W;]#!;8=
MLX[EC'+9SKZL/+0\Z$T;Y926O:_D*QDN;.AB[;8JOMQG&\=?B[BMLBZQWIQY
MXLW(JM(K;-N>:*5 P7<,9%WDXZQW+\ZUQ/>; U'S?$.7TE544(&TI%6?\,<)
MQ?(EOR-ID OM]BOJ_47?? F#BISFH=P@B6G\V9#TH(0*!3"5RU]8_^NN >,Y
MS/.XRH=,]BM"-Z=7E9?!<\23&TU^\1.@-(GN78?NAJ?>58@6ED"X)]$ZELL@
M9 1YWS9*+O]ZZJ=RDRB4+]MXEV+SV[U%'U)6SN)M)80OPS@%+G>GG>SPM3DU
MAYG[":L>^-'H_\O)P_^E)S)2$/^M)^9_$4<QB#SOV> "'<B)J7BSODIYYO;0
MBUNP)G^2>_6XT\_]L,FF>O<4=BKVZ9K]T0&SDKJBO7Z#/K6R?PU]BN+2!]!'
M*F2BO%7W)<SJ<OAC#G;#1LSVE":WL+DOY1>,IR18><I@MGSPC4M1@K=3XSHU
M= 1DC5]=L$#!$IA(N,Q9,=U*I;KCU0X+[O>&MT[];OR 3_AQ4A?>95]@S4\E
M<3CD0+_/N_:+1>MO%92"$\1+-BMIT@=ED\ND(C27<=1!4RD3:-]C.'E6V(WH
ML"0?*1#V-5<T:[L6^UB-/\M@_,@/-L[DZW8=E1?Z)(R#&ET':FGJ9PG@=,"P
M1;:W4V/SB'WYO-[NEW7DJ3/E"N&*367Z='+8B[TNMAFPXZS!"=$=ASVS%[4L
M ^!&,JR7[GU->FJ%C=Q1K>5Y=,^AEV3GD\3W=)UM7%&R1WX[Y_SR@RKUD>')
M)HUO&*X9\JLMN,MV==Y6<@^"#!S)9?F:U&,T:=#KG1>]D;O4>,CTQKU-:=.7
M'4ZUX?YE MUUTKESA*26J.W;500Y7@C08([IN.G1SG0?C^*"#[671=]_64<,
MKEQ=O@J--GZMI\)V[#]%YOH<-/BZ"W>GYBYO@]K/(>L6*E'0F::ODK:8U-ZU
M]1#7LU2&728_;-FC_/U>XS0K?[NXTBC;@A#SU!MUR?=YPSX9V9;5QU1E'M:1
MV"2O<Z;&K.S1MW,^1C6S-6FN(R]2_(_+5Z"AAYT#Y\",5[8QI;>@&9TJ0J[<
MIPR2B%H\3V)=!NL\L/B! BH(9;NOC]A2F3X6K;?0.T0 !S,GL\?GAW7F6RUJ
M\<$]1Y'/GGJ'RQE<E=:#Q>SIW;/Q1C\2-Y12.#<QN4\S5U(,A9&K]FEZD50J
MND+_2>)M]V@=[/7T92JAAH$W%R;2:NX>\-BN7RL4Z.NI0#AI/557_B>A<ZS&
M_6Q1Y2DM:FGBHAWNJIQ,1TV#-B9*IMRYU%K51P1TN;I-=JKS\PL8<RW'TRC[
M-&$$\!S4GJ\+XG_,"_22T0FWA>V(R=F5 ?4Z-*+K?7DJ&,#7-DN;$ZQ'%]M$
MUXQ9?<P"P4E$H,9J3\LYA/?+M,0G$/;[:[Q);)RBND"XH5,TS&X][_LSZ>*V
M7'82MUUN"&U'5V" NHQ$Q!WS!U$Z%)<\_YPLJQ7@,',@_Z4ZAY4G,P/E;#++
M%K=GL0#;4E";%_(<&P R@PB.QUNJ'H@)>0*<2VG90KR^W>OIAR;\F3%;5B$$
ML V3#%+[0)0$O*%BH1[7&07"<,,./Y%HP<*SSB<N(3S"-HNQ#(U$2PJ3<(GR
MUF\ I,]8!=\(VR4HN?%BQ,$N6A53,)\L:.+!K@_)(B)U4>F@V]']A(/GZSPJ
M6[Z&&,9+LXU+Q2S41?,TUR41&7+3G@A@5K!MBI="%K9>U7HB-6D50U)@P95B
MVP:B:]ULJ]7Y2B$_&X@G]'CK5;Q?UCEC=>^X=WIZ)(:5E;U5RE-\? "7&W<W
MYHQ10<\YQ'EVB5.YY_/B?'K#@EH%>F1WA<%>QZ4XQBJ)P#.*KF"7:?8"V^5O
M,:VN;2]E\4:IA(E6NR=OCT,6@Q;N^$Y8R-GQ7)1L8UP W7?"'Z8<G'V\5JCG
M,\CM-E]H#Z6I#E]_I%\8/.O0=LU';3I@#6N1:7$J:!(KGU\6T=,MF9>S;&%J
M'G@_0>A?G-K.Y1F)C,B.N8"_5.?9:RTVS[@Y[S"L**#]L3%PL)9[SSN4^ARX
MKWM78?*E =5Y_B]Z JJ&M*,?:4,\2QJ/Y5=/:#HI$AG%UD"=LFQ5L&9%.5"P
MCU+EFN,A#(2\J.!A>F$#"3S;KOJRIXI6?-[)_B2NBK%']DV,CET/ZRWGZB!,
MN9=4Y#/)48W^93"9C[]QL#8$4Y&L3BFN!9(CY6]WS<3,T+*Z9\6&EN@V X>#
M,0ED]F$N;,Z.0&WK1I\"X<=5Z>+ZS^?2K.IHI;\6RYL[G8U,EBN+RHH/I(>9
M9N=HSPP4;O4.K@P0_DLQ::V[7-<?U56K:% SM5>^,,9J-5B%9+7>70- 2,Z:
MRC_0*+6\[[@8BH\^AERJI]/_%)LK%*7@Z##+O-QW@0=AH6&;T,#)_IK;$-3F
M=\9"S/C5/DVYA>8<_JS(/DT-L!FCH$>8.!M4P)]1Q?CY?\GF_[O; M,!7 (.
M3)1!7I[H ^OB?XPDK\Q+\D_DQ4Y9ZK.@H41YC:1P)XWA%5V>RR'S0/KU5J<_
MU,X2I2-2C4I>6QZ_GO/P1>$?^PK_PS@20TS;@4AUU?GT[M/@]W01OK1X7<HZ
M%4G)A530N_V[C22NY]Z(JRXXK@_YF'XUMRK%3K8[-OO">%]X7)!\N $"LQS2
M]Y:I5?_67BU(Z%DD##BJ^(+RC)KA'Q0>5#D%S^Q=X9U[T.JSJ!N:.JGXOW.1
M?#IPD5SS)5R#]-4?;,115\S7/8XM.B4Z>8WM$%.#=M8K1Q#NZS(!6($[RNQL
M?.SIBKN6>B,<=S:$0S3W7O^.ER(4SZB/PEVH6XJSR%-L1)X*P*.>C#=Q((&>
MH(Q8<>L8:C;P>8#*-?*Z$3?,N/"7HGT*=:[F/Q@I$GVC+5ZL:<?+@I;" 4^"
M% IG4CS&6[V&J;D/!!GN[MRIGE[8O/3VZ_.F+2PB.-?*NS_4W,@BSC!<T?3<
M$IW8(,K$UGN55R]0Q[$ZUY*U;[M<O_\M2GV,')^9I5RWI"@K4D2I:G/(7D&D
MU]2:TT\4MC8I, X"#68!IZZ/G&%>-#-*2D=/V<7DOD<(KDQ5+R!>_E5)RJEN
MB-7)T7(YE69_*-6,*$E13.V<R?:")R,@H";.C-6[/! 07.T+TH'VU!TB4?_3
MU7!]#1$5&5UQ[:]LL[RO:4=R&L2DM[H3LV6_>HX<6K[?ZZ'2;9HZ- XT-U6E
M(#4 ;B#N<=O#<_PN_: G@[5T2VL*!<"1,W'Z=$ 6*_U>WC6A?BBH'2P1^+W7
M(I*T[C;/(;:./$8).#ZBJHIVG[AB9S+95)CJJW\!+>*>KZ9!?KPN_VY)$AS/
MI;EFG79%T))5V_9RZ_()W4E"9S(9F;G^*:K,3*#=?A.JG/2]-VX;VUG'_+;U
M8:X,KM;<7*)Z?N))Q]S/LJ*_ZN6,EO\QF&"^^SK, ;C]6X[K9OL,N?EW<1+
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
MCPY7+K8RX\*O0C.8#.>J<".VN>^,_IO-.SB]7-C*5C!U7MJ#.M&"\@%30<\
MCZY0U>6P:(Y_'.>T)A.BO:,4MHE4=AM(QT1Z:52<[S]3G(IDXR[HE"RP')4
M0%_=CX#<;_'O%!E"^D0TAFN./&#S*N[>UJ+B/V1OA$YIL)0B[ZT(O?=(LWV>
MA[_0U.?O*E6MJ/8NZHBDPI#>\)OP8/)F[H-*KHK/?1%U)'46Z>EH7LL> G+)
M=L51MJG)BB\]D/J@BY,][Z=39*[$2HD_V7VY;1LIK>X/^KC_X%.S$KN436-T
MH.DRN(WIN>*J(X7F[*"SINC.9Z!I*YL3SP=/YDZ)I!/#.R+?VZ%;%8R5LZ2>
MH%8$0QS:/4L*-RM#^7UZ;MYYH-)6Q[5LP32IPLP:QED@D/TK0,&WA[8&&JXJ
MYO8>WCW80'(&97CJ _Q7'9,N!@6EE-NG[$['')'TP!>S'='6;M)G)9#7=S$=
M?2;X.<!>\5K)2ZI=8X\-9*HM ?RZ9+9LT U>"DC_;:795!A6_&\MHO_+]0N1
ME^C'1^FK)Z]M8^0O;P<R1+Y8W6YCZ$GON>?5,ST'WG>35%JZMD& \5,$AMA(
MU:-'M=*W]0JXK_/L0,[YB<\9A\#M/Z!YY#<T'U=L*VG_>VB^PTCXU#$VFQP^
MH"%$(B:_%L+U?\H6XW@C9>C+3AX,4"D_0?3D>: ]J25S["DZNCV[UM,E=:.?
M:;[+,<6:JLX*J)P[F"VPWKO222S6EORATA\[9#J&YLIC:/Z/JH]Z/. 8FG$_
MH;G<E^:Z+X7T,_P] C97>-MPNN2;T/DV/3HL?D/I??KR$H+7KC%+675-I0L^
M1(XS8E[MO^>1Y9KY4AFJ\TD\*$X#K^JA=#VJ;!I^1LYBS.5^?WR;:%J;:+:.
M>?>+Z8]OA7C;ZO8G8,"[< AS!YG@.,O#:<4\1\4S0$%63DG=U:@6<FEK8Z\>
M%\:,17@79^RU&KD;?ETQ0#HL/X^61E-Y)R]%C1#K8COLS'?RM&^M(+.!O)P=
M1YTD&0BY!.8F9-9!641\].S<]/2\0-B:R0.KS50*SA4)T#LOT:Y]-(@'C":W
M#0%U@$*#$X<C]<)N%2C]K3V<?CJ);FIUH;$+=;LR%]OCM^!WYDL*/DV\FD)2
MSP'Q #*W92W0E!5QJ2HP:EQWB,&K)QS-.6D1U_#E78.5#__W#:36MJ^]Y*0M
MZ%W=FG+:""KT*]_C% +!?L_B<BGKPU<^AIQSTW$)G,E)\,JL7"DKU#DN+D]M
M"!TZCXKNX8UN9D\]?%ZB]W/(@M2'\;*WF](0 K/22[VW\<'L!(\ENM.N1ZD1
M6D.)]BRU3)G4,PSV$.)V5-6,5J9JA2U$M=U*Y,E>,=YS%05)X6)]*XQ8:>+M
M2TB.2*Q+"[GQXL_:1Z01GV5FHWS+N:$YCVOR4HY(7'3+5QB7KOYYD-#4_K'
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
M 15 HA4<E]\O?QQG4"<+W7.I(Y)?5G#CA\R1VV\)Z$E_C)[_A3&.>^3OEJ:
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
M@$/VC@.;.3697WO-Y[)=>0OIP8==!W7"Z>XE\Q-8QZ5I>HGD5/__!JS[NG\
MZSB8!4\ ,$"XBZEOL&GP-M5=[4#!54=-)"_0%.W9J1 B56^Z.OVE\EBEVL<#
MB*8O'O/=821\+1KY,I'!(7CWU=^E-C/M5O^U6;D7Y+?+W;&54(KDKP570G!/
MRRA=/#<&E*&[A^)<5-5NY6&U^?%R2A'<4]/W%BZ+!M>[L')MCN)7I(L997C%
M^P^W0;QV[SL)P H,DEDE!R@OX@*W[?\/=JT_#1K,CT@HK;>S#F4I-_*B^JI>
M1=9&TE3EZ3"<\9^WLN>BS7?CC;!0&H'9, FL]J NONZ3[#8H2[>-@@?3J)ER
M6=M\3[%BY<J#Y,!EWU@;U\@O1,O<O+I7U ;56H,[OIYB(<N0U/&F%(LX[7#9
MF3U 4,LMG0-61MUC@LWB9'UR /'+A%!70ZL-&S*#!\01)2M+#6)#]O3SFWW4
M7YU2*QO'X\,GX!O)3CQ?T2*+5 [G8Z\6:<HY)?Z#,X?_F'D'69273JSY"U!4
MX7<+U!WLU-<]Y1>>F-CH53]P'Z5G4'2H#YY=@,"_6;GEYC23JL%A>ED(=&,+
MEPG1/,=9D^N['O)Q",9=?M)(+6$"ODZU6$P=&;^!O%Y4(3SD!U+_LMTP84R?
MXIQ)\TE*4ZAW<*O:4*8$M#>:[Z&PB?,+;T (8=I'A%KF]'_T2&GO.=XC?$?(
MM;=]Y,#F^ZBQE_>$ZB/'M:UPE:QD[J"<JM)D[^4^.'QU9MFG>)H?YS!U,*';
M_<CK8.(A9!Y4U+&>:*ECD#=DOP@&06L*&/;ZTN$5*M9?"PL\TN]<D]X8EA=6
MN*G@)"^*5FF,U0UIE?!HX,E9>"*)X+Z4Q?4M):A5HR&\FE)E:OYBY&;NG!WS
MC(H_T0OL]AR_AV$"8!G4C0#$F"CZ$;A;72,OT.S,0;<> 5Y)?T_@FZKT(,#K
M.>G *H?X QO"U@4PA\T2?<T'G=%U5-#U9Q()#*W!F)0,<&4WD"[K)7C(8+)P
M>"[,(X,#%M+.F(.H(4U=23DB">D!&.X^^0VQ/A=M<1J^*!-U?=_&,,*F7W%,
MHEX8^R.:MGRL?>/^=7JIN74-LA O[4+]Z?.IE6W\XJ B+[5B :[' B_!U]%I
MI:Y2X=!M)<_L5;SF5I#E5N;K@UU[']ON=E5,%DND5/"H%Y/Y?@37$4D=_.&5
MF@Q-*UVIMNB:RX$CZ\[[NNOJ41SQ66Q0V$Z0?/P")AOJ55L5M5*)?72)#>$(
M%N87EK*5*&MR/R(!/'U3*=:X? 4''L2?J.Z<W+>I'WQ_!?>H5'\O>Z)>!EH?
M!7C;8[/5RBE*-[(Q>\.Q2-1[GICYY90\WR5W6,0T4[ NF)$K_>)?<]"/2 +)
MQ(D.>R92H G+"N X,6OP-. _J3G)H@AAN;H1PZ1ME&Z20D!Y=KXAUS"L:0U(
M:V4SDQBZ"R++F04B+J\C7:NZ^Z8^R9FWC_=$;Y]VZ48VA]U4GGGQ:(ZF]AS/
MKMXM?)%=JV=2<*5PX3WE+.O5<"-5EY@7LCN@-/D2?E'NKBDW/C.'86P"BILF
MG#E>48C]F4TY?\?46\$;)_T4K,W@'?7Z.V^" )69U^HL,N:=-7I_@-BB8?.5
M+"X=PPT$_A@3G6^W;:T6VVFYU]L8'!%DP:K0M:OMT(TU&](=:.MD%GY_@6JE
M+]P=Z-QO1)PN<GPV&5>'%>@*AISQ!*D3V/K^_>K5Q1NJNWU%:1Z,O6XA6'A>
MU=,)ZH-Y9(\V2\NGPJT<.D?PP4US]^*;V9-"N2F-TR,OE_5K"-2P\B9UK!;S
M\]0O=5EER]+T_@J9V9L%(5 ]]2! K'EJ<>Y7 MOHR?JXJ\Q%:6'+*P[G3(9$
MI+[6ZN+DHJ1[BW:D4O[6ASV.7GN%E ^>#Y3OPDKMG7O[">?BQ9W+D8UZ>0^O
MPG"'UXSB;CN1:1NKVJ$]B]P4HGF_*=7IZCEQM"I/)S^#]G7W9POT';*"+V:7
M(2$OINFE>]=F7MQV:V>*'JEZ6216'+;WAUAB?+A3B&AC>(](N*9\Z6)YP+?Z
MU^"HSUCHFYCQ56;U4<.-CTGGII^4$) !%N;5,]0=I(K)/*1MGX=L>Q<BC0@;
M>9Y2X/!^!U&9.I5XHA Y.+/7N\'^=KQH]JZO/R@D?#O2A&PEUBH5-B[Q_U0*
M_6OWD,_?NX?6SD+AKWM4ZK3[\>!5 BL5RGU>PW;(K>A3'*SP#3Z\<H]PYQ&
M? +2&E0!L K=[W[60;/S?[7W@D\L_L=W_M_5S)'A,A.=53%K?7DR6%..OJI
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
M]H(A8IBKT$E-4<[S.]%C$'#PR,X=<"A/I* C,65C44<D]#=D#!NI5P32*/$
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
MDI>#OQA?_4@$?9+,F]_+4)1M'=*S;NQJ#':5.Y/EVJ4P-)7>GO5@!&B.,U/
M)R$+K0[U P"SCA8.3FRR[F+[2F;)B=U]I\*1JVPGYY*?Y1(@A5 Q M-1O94
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
M<[RWN>*@) MHM?W/Q>O@(QZ"B_VV"#F1+5]T<(A9KP[*/^RRV'?6,A*#DCW
MQ3DST([ODM8.)N,I84-25JHYR+=M;?"/CYKA6R\][K.+GHF6VA 2R6+[A,P,
M\D380MOW3SB4; JVP=:,.0F&Z#='<32X!9I(PK9H=B3TF>=*!2,.P =<Q$95
M8[4,*2Q[WW'<1OP1J ?=I3O9YHV>NX\?/G[H#9QJ[CJ,& 5O/%P+O,8O9W'[
M_:P,TR;)O6O("H%,&J7_YI'!>4I0S205ZFZ'N*S_BPIGI#;[BXH\1KN76O5R
MI;H-_=AW +!^F'2T+RY3:/K3Y-%C41O*M)_Z7]7B3LCH(@A=Z6H:1A+;-<T+
MI=8.(1CO6XYQ8Z\WT'3;X::3S94WYK,N L59RH*&6:W2X% ' LTH/_W["1)N
MCG>&/%UVR2.YHYT4'FK;(@;'PE4S_4724G)E]9_4%G!UT([2V*E:FDCCSI1#
M*6.ZK=$_Z4$4P+2J\S%@FK*>'?^8 QS=C[5DI75T+)_Z06$P&]Y(P[V"[Y%<
MN'?>]$63WB:LK7BO+9U3Y.6X>]D[EAVAA*<' U8E/6C;LZOFY0+K>)W!-6+E
MJ@6P'OJZ,,Z5W>$H SV0?:I_IA!9[F#6&IM;$K\776A8'T@*0+XXW38->?GD
M)5#I>;GPVB48"*#X?,ZE*[>S<+W^ ^PK^,Q]H+9"%LZ#U8]D&,YM>P M[MIX
M*Y ]W(,M[[1,#.$&WC"DK[-79^DJ IXRMDAO3+O]YAI<&?[PW@DKA@0&T=M)
M[/ZA83":M6'3NFKSR@C)8<FY- 8.Y?2(!_L.!3L@6D;8:MR@GP.7B6=/5O"&
MED<V_W!\ST5/1K!KX22)TY5C(!JF=5I2K#<S)O#\G2>1*J:!>%Y7Y-NDA]JE
MR1^W (/NU[H(95IA 67Q2\:0O)7.MI:=0H@9KXY\6D!HFU%7[^MXZ QWMSS-
M0K!\QG.(N.3C]*,5@P'O&G%TC[:K4T=XZ9>?>',&ZZ$Z37 ;O;)!BQE:;+6'
MOI-M$%KZ.6[!*L<U(MLN[?;"8'\[[^PO*EYNK!\M<CZ[6/0F1FR9&LQ -/9R
M0Z<N!-PGL2WTAGF)=%5U,#6'12^L%#2^\#[M+I(#D?\:$)I*\?O@ZOQ?8?U%
MU1NU<YH">'>&,)1$PO/M92.91\-")+8KR7@B @&>KU'L*FP+"AUW:J$>R2J;
MT+[7?V>/F.L&JF982A2,26TI>PQ%K<CV1OM@MPI46L<0BMTKQ$.=Y*-GBN0*
MH32@P*PWMY$P\1'&*%_Z@M*4Y0_O/$<L5][S1.(-TC&(-"47?+[2Y/W1R;E<
M7V+TNOOZXV\$[SM#.;N@P'W9K[^HE",,0)!K*HKU@'$7IQ;R6\W:]F[[_F'5
M,.53D"'#CHGNH>>7IO!*%P+Z EFTE9JU(S@F\+(*PZ=%]1)+?ZI8-+(_[9XO
M%'$G(A1WLFI@G_KYTI3'D;O43[$,.KE. UB#9SS 1,QU0^:CF^'$_)^-&VK%
M"0GSG//ZPK6F\+F".U>^+2:^PYHVP$9CJR2'@58/IL(3],"<B5 &(VBUHZJC
MU<>0$_#@]&%[<!;/JAEN0*-( AQ1>5K</>5PY11.III3R*3=8TL#G9-:6:R8
M7M FM^V2&<OK!UB&#-JQ15\&DR1HTP^0(Z*N&X 1D#_8H%,2IE%T=$X5"OVE
M.B:SP=,.Q,EH6_3E[6S?+HIF9*WOL60D)"U2%:+*5?Y=D.L[&D;]@:?.F&"[
MS4GA1J5^,=A"_:(ZM482\<$$</XT*V; (K)LJO_%<N\/NO#0_[E$E[[.1F$'
MMPY0-);C RE L=^Y4; >Z8E;G#TX"=:&A ]#^0E<^:(9,G@>&-D\JC[\R816
MI18(I<L3T/7S%Q7X]".<U.BAU&ECP[W,]5*IM]M6_!0Y*Y=:KS^S@&,L;24M
M9437DOR?F,D_001 VT()^6.>5%X6^3:WU_V=6CS;*J,=ZM5X2$\U7'KB_BBX
MA<VQZEU8PP>0XUT68F"X"F0]UZ,@CN4[7+>Z!Z[1$U3=2S.5OQ"&M-,:/;SN
MD'X(&.FE7FG[W7[7ZT M.)%P7*6K_P-\(E2O?@"L/637G?)@H05OT;7WQFZO
M-GA=E0):T8X\1*TD FBB=.C)>"4)'X,,[SD.1G1*[8([)BT[U]XR7[S=\D"G
M@C5 F"D-J4=]/8,>M04]9Q5XXWJW^^T)O/.'Q,RJH*XXEQ#S@2J3E<F&<%\&
M:;R1@L4CJ'#26>IM*+Y>KF7S05&%T,RQV$M$#)S*\B<=Q(5\;=O7O,@< [N#
M?=8P@-4G <;L^ 4,&=U'Y(0,4SVLDR2_V\% +%/(>&1L8#/D@"??O=N-G?Z]
M9@:/M=.@AF82TW(4CUS611W!7U2)!_(X8\-^@YETC&3O6$890FG"M>"PG/;D
M315!T\Z*W9V!@J/3_[\(&5TV3(;J"1QT&0EOU[/Q@6,+1ZJBCQ8*PD-Z6&BM
M-VQLT!=HBG-].9SN:')(%\15MI1Q7NO9"7A<&'34KYV<439<','V"7#WV48>
MC*[\JE]%A>]IPL1\881GKU@:(&MLQPOU@GFDC)^;+)8M[;[KIQJO8ILEF3OI
M-'*M;&U!>QKC+/3SN5[BD"%%:8'].-K3'$7[7G<!YU'PKM:?[K;S*91HO[ZZ
M969/:OQ&^AA"3,C!+#TC9Y"OF")U]CYGG)I*V\XU6](4\N):G?]RZE^+\M7I
M0 ,.W(E?5%95"9UF5W5E$!2X>O.(9 CSEM*ZAJS]C91_S5-[L TDE21D^EM(
M@D%@R/W##MOI&WE@WBZ!;#3=]/-;7/:U([&E4R@;G='&RDAVG-E5 <@&=<I8
MM\XK:U'"K>M9I8JR>YB^EW)<?82;C%E9X-?.#&P\=V2VWB4]ITS[,8D!Q6Z2
M\V-OZJ.W0<F]IR@KU]??K7L-\T_A9+V$_-KI_H>F$B!_]\KG_ 8"-LM&3QK?
M]I[!CM;OJENDOP;/UJIV/LQC3JM5LC'A*B.(;5X+F'R[D1%$)G@69[@G2NIZ
MUG"O:4H/X7][8QG2CZ)[$'%%OEF]Z'6NBV#95$*!HNG)1?"SNT:W,Z.\XK5/
M1>JU<GPQP_OOR=[<"76MD*N>;$ROGH>\+O](UAFKBI **.?6%,OIEMP<Q"N8
M:F"=\]JW_5D.R!!:**JE['2HG>X\(CSF !H^5BSF\\7SX3R-_$@&4\4T<QZ!
MO?=+VM2!Y3PZ]!>5YT9^PHD]IXY1W1>'W#G205?YM_+>E/>6CU6#\42AGIMC
M.;FG7-H4RLE@#]M'88F8B9&;Q 'H#LNCWW9[;.HQ_":/F AE90\OUJU",V-8
M!SYKH[UIW.ZFEX^H6OY\I;GX8RK1;[)@UZ$0+VKP\GI6\I0_*8I%9]E$O7<:
M_B:GU<IZ,D?//<?N*2RTA'GIA:2*9VFMOC3'A7 B*'CV&H$W@X'%K.K#BG]6
M_R(=8@S-S !,++C*^>(H/,>[^9M!V[X^C\6=MNR5)%5F(!02G%H'LI>42Z3<
MR/>G/&=%6YF*7CABS-5-[ZXW'*1IR!L]"8#,CK]P,Z5;)D4'[ AW@8)#5:PD
M!B>-8#U?VY$:6PC';3U;.J6F&WD=\\';'K21F6\7#3%>BW:AB=V_]QBO_:^<
MX-8L1)],J\9G=__S!EJK0*U^,W?W/BK, =SQZ7[(7!X^27"QKU5R3D'^3))K
MHF$S8C/TMCUPQE*\CLSQ@.US-T$H!/3D8"[2>ZX(A=$.PPB9)LLXS2R?:IZ:
MF>M?-%2QE[ZT'#5[]OT:?#GP=I5/;G'_DM;O7A@FK-%329>/SIR'G<_Y(;$&
MTQ^L_>NC;Y[B!&1P.38&YZ5-,1CQRAG!3EX!,W7'@4<?L+,)Z=RT0=N&+"$X
ML-;R;.!/KMR"<Y:HA.[.GL"'KG<+/^.S\_Q&<-7?*W[RWWE= 5^):O3:*BBM
M%?NJ/U*7/V2&;9$53ZOREYEE'/2R&DE-T@7;?J7OZ0BM%=E %=O,,;JA>?)8
M(]QN_,'!/$[;M>[8!*E<%9%MR@^5?Q%VC^UH!68X/#(5,.S5&1B1'0X[JN-E
MO6S1=\2_1AJJA0B5F+^6.X"V0>1BGC;@8+HP'>)/E,[NY=2K&\9EAL7/J&"@
M7U1ZBY!T9_DDGA^3KO"!%7Q*677(N(C5#P?<._BR%W5&3((N&C9>US*;<D/-
MICWYBJ5]B"M*$?4RT3"5+SE/B(1KTZ.@MV_]9>[D[O8[0VU)Z-C4:/RH1BD(
MX2-?X&<[,=F NG<]V45P8M[HR44$DWZH ]YNFPUQ168CG^./;D$8&\J19%1&
MF/%2V+4=/90<_[U%4/U'B^"[Y,?_*U,MDOSQ%Y7,,3$M:3M607)^)NF/M&&7
MDC9$!8X<IPGPH6R<Y?.=G#W[N)PWYLB-5(^(,Q+M0S2: L][\C]*N\8,'MAG
M)G[.X3EC?K(\;Y]C72>K7?I/;9$K*Q.FBA0QS.FYXU[D_XLS+VU=X+6C/"'P
MN)4_34+LG"_M*1+ 6U, B$T(G&GV#S/<OOB6&E,1T>84ZCG3TIF/!1==UD5A
M;R6T4O9^$CV:\&("@2?+H< T\'&N<-P>V"VC#9!>/4N94I[\-WS5GT13K.'K
MJ=F"QT?;0*.;Y[##HBFL6]W5C4-Q9L=/[WTM3#O$26_U4G37]E+7 K)DR!0Y
MV=0(6!XS=_9@#.H/%9S9$<D8Q-,\@!9HBNP&N<,8]_NRHI=53O'H#?'EW"W.
M/%_6N('V6&%-M35^UFH/_'[=?FXD>M[HO"VVJ22R$]MB8%L $WENY7F17@.B
M<:Q4=67(P8YS+[/*ATS<0V<H;Z%]*T1*(H\"MLAVC_)<%RULKF9?CA'Q?N+C
M_L;+]=QQ/V2LJJQG<1M3'E'9)'RV_CTSP<HDZ/-/LX*9-[C= ZOX#P,E7NS4
M"?FIICA'TEV+A*@7_<M5YY\BW7]S+<@L*E8R^@KF'F?107GM#T]X7M$YRAJT
MH_[S 'IH:^R;X6Z$6&Q$RN$]OX:DL'9/2E^][ZJ'+9LW%+$$RTO=?A0\[A#/
M>T_2,J_>2OVA &3R40I)S9%#<*08_9R-HX+N*OB2[=5\2W31+#A9@JQTHO]>
M@;)<??$A^TP2%6%J-GD/]-J H18TG.&R:+CH#I#B^,/C]8GY/XP;7-KVO4I[
MJL+)#?MOTG=!A%XO@](>W/USM1\8IS.$$/2LLIS@S4B)F#<'0YULE4@C*^C!
MD'93\+5B>7:=H+W>3BE ;/I7A/0P.EY"(F[C,XC8VR7%BEF]GR8REXJUAH(D
MO5CKAX]^"(>A?^OJQ>7IGSM*6#&6VDZ\V['>LH(+=9M2SN30E-*RC^,LO:RA
MD1 ,F4%Y==R\ ;S*L7/G-BY?< G!?.6\@B>K!76\QJ @'WC=9%V4M:8,?S/G
M+.&1S8OO_ U+G3*'Q9JG(N':) V#;M='F9[+M=+'A#6:GU*,\129+=(Q)-#J
M4XU_*APH\#A?^K+NAP^BEP3PMMH,&CL?'^YVR_8/J1BR";JCU82W5/P;A%I?
M9:-UR4OAF.;3:&ZL#',XA$!3-3O5&X@5BIO,/-.8E;H$5BFS!AD8MG*A3FNZ
M:8=XT _C9L\U 2KX"T4GN<^6QP%$]C"LPL)SL4P\U(U^0N<8A807N^D3K%B>
M/B0B6N[5 ER!];+40FIFXYK6.PYZ(@:E'/HV>KVA]9^1M4M[]=F,JT0/D?SA
MAU'K@J,ZKFSNW3I5EK1WNE_&DA(F;5*TN!H=;!H$0]SQC'C>$: +?<BKAJRA
M+!JJ.N<@)W#Z:X<(%B:#_>(B7DOZ5Z0X7KXG>0G=?)![_6&6,1.X/L7I'."M
MFD?F1F,\@@1/NJ,TZ;&E*^F\;KUT ';P6X7J3.=3'+#;Q+"0>Y>&S$^'14!I
MSS_SIM<P:'@,BM_>W<?3AT]GH^4D@0T^=]M*QCX)H0 >C+VN;R>O[G<U>JO(
MB0BF?&7WMOP.'4E+E? 0+^+X.86:47C=K6Z*TV'G!)2. >T$#$),<8S!8 XB
M8,)S^?W+56MZ4XPS)B%]<.=:-O] ,71Z:AF86'&\C2[\CR8MX^F7[IA',YVT
M5J/YB,M9L9EB>R]DG)4/KWDUY^,G1QX<I:\Y7*12K);=I-&C&_,)IN^ P[5*
M,O79&-;QD';&%2[]);CA9X.>;F'^@.DL]U.:0$'[Z4Y<D<!GXAZH]?"W3X<<
M'1>V .L2U \XVT'^03KAB^H^LW>/[L74V OT2X;+].PHO=0W4C[;@>EQT-47
M[@1[.,P/LC.>P+#H\%QXZ"?(S^I*G.<GR&<1M-I%+9G6NF_!:BV6?4W9WY<U
MI\\C-[0J)'KRZW,/5Z.&F?4S7CKXJ2(*K'"==I%"H0H& _'Y;?(K#<$W)D*O
MMX$W$X0W1>^/BQ\E%R\[>56*<YW:>[,M#N])*7(<)FY,ZJ05!*8IHIUZ=5Z;
MOI%];A 0G'\^MB:FH%AL'.6HRLO;H/W:60RN<JQKEIYB&<J-UE)L/9D(C>UV
M>7+"#EEPV9%#LS G%Y+NFB]S*7I2ZC;Y%,<&+0B3='7JFN$O*I1'58Z7[?4P
M:&XT W$J1[N5:#>P9!JA)J1ORR H?VV3([J"A!-3+_RN"3)U"K-L\5'N?-^8
M_7FMI,"Q$ EZM>ML(SG *Q )F?T9>D>>IA#2/3E"W[F_]WG0#K9%H&G1U^=D
M)&&QS]J>OK^_9%U?J4[C0@\Z,?1W:=R_"*@$[6L;C!X*=03\3E3_NAUZ3S#D
M 3%7@!+[KZJI"[6[LQ_*W?/!O*N=1(W^YMN(I^TI(QN=%[-?'I'OBCE*&Y;_
M0[_S^L+_6;\S*P0D''JXZ+6<S_9[[*]FN+)Y5->[5CGVB':_WNW->-^W1M8/
MF;_$?:6!?L/N$X#9>V[C9[%$^24"IZ),3W3%BX@29B*Q)(O.3X/&BW,KE4(Z
MZ!C:91AKMNT,[*R$_]/Z-S&'+##XWT8$D+O7BZ05A_^%ITY!\77AJ9G\$+#Z
MH/W/*#M TC92NJ<P9:\&]X-V6 (^&;5S(G/Z3L>C4_!77L@E?19K9>.OBM5>
M3'IBFO(#7W+S/V2160]6L+^HZM)6T(_14MM'2^ FH@9WYO@P]?G/^"]WG9'B
M\N:WK_[U*.\)_W@I #O 7I9DM=D6M.L1(WJW09%\[TS_*^I"M-$Y/N<U?G[B
M9R9+:\VPS#3K&/3S1#O-EX[%?G[*6G"/ZP9$3/+'C%*:I4,6(^^8K<@0Y,_+
M*U"W6I#<^;KO];H@'G<()X15)T(JKOA3:REH(V<>6+OJ@516]H1WHR_.M%D>
MIXRQ,$)?:7%DO%=FE2/YV8@KBK\-ML7'-,1HPTR-\?I%E5,>J?XQ";Q4(Z^%
MH ,"KS? '5FY6+R(-)NS:4TQ:1\<GMD5(XV;!'L;4><4O$);H7DK%\0Q?8,W
MYC_:50"KMCVI]Y73[!P@KCPSK0MBW6R/OZ48*\.THQJKN_DZDR#7Y_]VV=C[
M7B5=3$L4!WD8N"'&UP0C)'-G]Q6"YZ]Y37(VW0+<MUGMM+H25<$^DA9"PLWQ
MR=3D,2L\#[LH+%"2\*")OIX:T!?<3TL]11!/L\V\)Y+U:*C JK$")C!PR&1T
MNO!<8O><HF-R[_M]R4I^K&4B9LEU^L&M#< 8B=V2%7\.<B=*0]8I+K[MJ*B<
M.,W9666-DYZE.#AA*0P"+HK3Q/*CH^=*I\H;X'TAK/=8-#4QGM3A/'4WG!0.
MBY?'TJ5=,_7/,4DQ3!N5_HZT>W/M\OA>:I7!RK>&()Y?5"/H','E'>K:PQDT
M S.9O>>[UWT,17+E+[O8WO<RZK<>\U,8]XL+4H;C?"GH3"\-Z.8'.<8VP%H/
MSF9B3M-A!,=ROUABW\"E/'20?I*1/G!9:Q?E>=D\^F[V\#XIG7V2H//2#5ZL
M:@JP>UE(L[*3]8N*U3)=B_@*)&08.I.XO%(\37%[F&\]!%!H?["[[@ ?84_G
M/Y7#>HZR]U"R3^QF]F?_-L#8R*VN4"RJ7A2=R6?38\',CO&@#1%\./D#Y=*>
M4"R:]W0W43G"1B1KFE,0,H##+J0[9][:@?:D 1-?*\SIG0*J)UY4N;+#%8+I
MB6TI9<FZ'2RF13<YK]IJP<R4Q:+%LJ9J[(>TW E5NCKDR*+U0=O]=D289H$(
M6YS@ZA, +<R=(*7!<8]1-,.,<&M6 PT656%F49$4I:_AUMV>?Y[&]<7I/5Z8
MKQ*I)YIZ:Y7) 0:_+4!"!EY4_LC2$6\2E9B1KA=>R&JU%;@^[I9]J]XC5TH/
M^> TC.^MH(E9:#^TK4ZU<:ZV9F']%]6YOO-*=T\[X)TQIXN!%Q2I%K5Z0SG=
MG/K@1<>3^2=N?)'GK%;00:55+K/?ER$$TCDOE.C@0)4[^75'XD;YLJ&NQ0A(
MU(%/B66?_0[2L?J.!O6P$,UTB]5F3AY[TYQ(%6LEW\GO4U!^*7'XV"2U"^Q3
M+4XRI+ 9H3B%5U.Z\=DE9W'EPN,D16]A_B"BIY:_>U8FSW]C1O[YT-Y@Q [J
M@,M57E\H$^QY9S6SL]80 WDQ*[)L<-V@M!/G25))7NM["U%^<./M!MKT[!*"
M&VM=[XI74-6B;Q<5_+"55P25"1,32%YQ:8M$U0N,5'WLXJ33O]5F;,0S$\&(
MB;*#[4K7N+%ZP^,WT<R &[:P/LM1F30*LGZ!<K0);'@:.QC?'K\#WQFL1VI\
MK30;#,%X\\[=4$S<F!B]NF[W:"H4"J,K#H$^G2%'3YS09*N$>SXVCLI9U(A<
M Y4KNLF'ZPB;1OW48IEZYY$9CK>YZ_SJK1$UG/BERB)N6>?I2161&$@T@=NL
M/;%$DKVVZN8J[Q,^PP%WS%DV[ 'TVV)!1O#J.90"QN/MWE397'ME>2]-CWRY
M/,G%>&O&CB[[4&SUK%#P24=BQ+RFK\^732;DGE//*S+XM+3TO(%9*>D64)AM
MHT#8!F+@/:ZG-:K$)6HUD,"J)19=8%1-!&O*S37QZJY:W6[11Y[8P;O5($5?
MB\_HR9V5PEP1M>[@_VGRT1F%,@4.Q8EK"0$J/+9>:C8ZL9ZVVG93M41?'I?H
MO>BA.Y/%G!C],X&3)DP'9_+;^:N()P;3_LX;[SH<Q4'J9T30W.D%;8KQUI3D
MFUW];Z5GKFYG^I*,$;#-@95E>. AA\R\_MBA  68%^4WE77Z&^&J8TT&^P1@
MG1X3/-84+CV,0A^%\@;:GD*V)5+)_E'48V>1UC!P1]UN#9&N^]?&_Y\RH3+_
M=V@>W_42"HE??&YHSI$-MLOV!X=_6OL7U<>H)/#Z%_DS][*0L%5N@9[X+!;0
M5[H?'_<UPKC.X;E$,F4#W#)*IWYZ6_@P",944WC\5LLR!>^(1Q&]K#[BWX5"
M*2WW%JG+_]LIBKF.75AE/3>P3E;-/TEX.^_P:8'D/.\)<"+%,VJ0#V>&B'Z#
MMD74N&^4L/'=3D.@E#@5WZHR52:OBW2RW23%L8T"!/VV7A*M'IS(SZUV'H@@
M;BT'L/U>QTMN@_L[I6G6N8^]S.?^P\O\7JK?8Q9T2/ZS@6=M80Y&CPP:)D84
MI0>$-CB#M%HZIHPTC 3=P^CLO/9-[T.KS[$'TL,-<Q](67G).W8]KP5AJ)U^
M6$!7K"SJ3;.9(W5N[Y7E1K3'72YMUG$N]ZIL/ H5@-]JSP0A/G$_PCEI;ZM8
MXC36E]\O75.Y=B71P?"T!_J-BY'PR#TW9_1S%O@*-U!AR_('^1J%</E3ZG;S
M9/\A8(Q!E6DRU%,-+UJBM[$(N=QE&]^;X2>?$,()>RP%/M&$O]@ 6'BVQI@M
MH$#R%\DP19:+GP2'&']#:VQ[6'G-C+)&3Q;X+/?@>L<( <Z-DPT9'KI->JPQ
M3(_,,SAW,;M:.0Q+G;UAL+\D6\?Z_M,?4@0L%Z@6#6^H4YH=ULUA1-("_JZS
M5T-![>3<A:J-3QUY:>1XB%S9[++N;T[(+?OE80G%N<X;I;>1.@E(4Q80#,9"
M@%_[[+/)M;/CI"[@U1VJHL*5]G7%IN%3=DWL''3F@T"<0MO>[2K3E?BC+%7L
MC?EVWFS>J3B*SB=IG $+VS8ZALM=(3H>BHFT4]2W>R5:*3*B,G_*B#9'?@AD
MW9A]J2JAGI"3UY0FH7D*OGEEO,E*Q'M.^@-][+1@C[73L\VS2U!W>U^\C!UB
MF68W4/7/[O\O*O\J;]=3A^WH;,'E[97 @P[(-0&29 A;3;,V11'][7_<E--*
MV[_U+-%FN-.&6BL_*JH:V5@7#VV4ST9S;_MGG"[Q<-THB)=86' BW7)/%-AG
M7>?$W3SZJ-#$]:^'B]_0MB'%$AX-&BUIJ#LVD7!++[A"ZT7KB5<=7/.JB$\G
MTSAB. Y^YG-7._? B5MM >Q,1F.&!_9L%U0I<+W=%>Y_]W,ZP?A:(5]235[I
M<WST#: K<KZ<$0:W[%,QV&G PYZ\VU7FNUX@VI[VLK=RNU+F$JLA#EJ_$2?S
M&PH/<X<A65_#7,T<I47R%$^ 6T,1X"]?'2 AYBGUI/O[SIGUS].I6ZS"&<Z4
MJEQO=/;;TLL>N\[2U?]UM0LT2<JP%2RFA[^<5W6"A[!"%3XVW-O)?2J2N7X]
M6=BJ+@#Y6#2KJ N$;%6N1)R,W[\KI";(WP:XT^<8TO!TA4O@/5Z(&:D2!M28
ME.,^F5YR6@HTJ'/_I8#"493;X'SE_/21D+/XF;+H)Y"-)2GZSFOG7]B4">'=
MU9XULP/0X*Z?JS?/PU?Y ;P+,%V8*[%8A#$C%3YQ[!M_R;/^J@?L?NBBD?!<
MET>OLO?\#/I&(T/MZEI?+T%+:F?H%U4QM/U[VH=K8@+^Z;([P9FGX+'4U]&&
M0J;-<P_DJ]0EYT>E6"U_"*9'LO0&],E/#;]=-I)U9Y7FD]-8A*@*@Q-C %8N
M5 YP+LO3'@WVQ11WQ/]YQ":W4\>Y'Q(;P_IF(0Q.4>4.RT;/MTO:"%V97LZ
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
MTY*W2JJP?\ M,J;;<#(#+:99*9[&3-'I4*2A5>1B7DK*H/)HJ)-4YDVX+[H
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
M2X<FXIKJV>R=,Q4H+45^Q6]\,@8;^,I;$B!G*X,QY\;_A[WWCFIJZ_:&-T1
M0<!";T%00! 0Z1U1JB((2)"J@%(B(%*D!Z5*1YJ"0D!ZBPJA%Z7:Z(0("$A
MJD " 4(+[XZ><]Y[W_L]S_O<\8WOWCO&=_Z8?V2/[+W7GFN6WYQKSK5X0Q)D
MHK8M'GT.&C5?'Z@_)2A,[>YO1!Q,NBYUJF3<0&_F7*&QBS BFV4J$<W6Y=@C
MIN[DS,%$_\6WU&SSPJ=I>I>5[%L#TV(V"5,HAIAGEU+VQ3+*+7F/YWM,4.-)
MSZ4%R'9-HKU:\2-OD:86M"DR&^^LS/;],$)CRLYM:7)<,6B/:W^>&/./B-+*
M_DKV ( T!03YP=K%H%76CIRE!<N"2B4$%3,%6^'HF_P>H_6U58_-]ZJVO3P3
M&FQ21)T\BGA"PC>)Y2TTEZ?;7S]5'@X98#9 ET\%G>NHZ!P+&+YQU]3>F6_=
M]:^&]G@F_HL_1?77>[[_B^5P5$\EYK\&P+@1K_QJKH[Y9RR["%*??$IC>L?N
M#O<+A;Z6D6+V2^]VT2/[+U5I)$<&^V[L:DM<]LC^FOUS@)%Y/V-9)8S(XG=D
M7N0&UYG!J[@#X(WZ2'["Y?:Z,>OLQ*S'":=4:?CZXTQT2PLNSER*O;&C9?0J
MVJ*[(:T*-&R)_[&G,<(TVD($DH#Q2E#[V3Q:EL%'-U[1GV.F*$!YD%.)C(Z
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
M9S6=6LA0*B-VS_\S>0')?+:1P"#4<%IYAXL81(^H,B^=;12[GG( M%J>[R7
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
M3>]>&2Q[]2*5<#2P(ZR#-=MUXU:L2'E A6+ VU3W&W#I?L.BS<?%OXA^\NP
M+(O<6J:';;<,#'[YAY:5#&![R8R38 HBLRJ2AKT>:"6;0;<J:-6RBK#8S#Z"
M^'#VMUNXZ''_]5EA-& T+$MESX;SL&*KQ,TXB)S>=YY0Q&)RSG)[;J"$$\?'
M>W1/AVKP=J0_"8.=^DQ&?S4GO1<2;79<LKFP*>_,INUY[75#7=7+P$X5+F#'
MQ*")7?>P8CG7>B\-'"[CDO_6P^9Q7!.$B0@LBA3-)FIGQ@$Z?N<?C[_(>ERK
M:MBQP$8$Y7@8%;4Q/_TZ%<+X=0-U9&BEPFT5:G^"P8C.6CUJW;,%@;!8)&:S
M%SY] @K@3,NM!J<V3SW7,^-E;1[\$ WHU86'=BM?=9G@DD;#:6/&N@SVPJSA
M4[Q^[ :F/MQOEJP*HS8>DR5K+KN!#ZQLW<69;;#,*F@&T9@-]BP=-BR)SO",
MXCD WCI!7M1CT[B3^58BJHF[29[ ?4\;>=2BL4ZY;DY+=)-RZTG.JE2[ ",Z
M+2V6CSRG[R2X !^QLE*%';758B'#@39/.XWT=@:;3\%#6NWCZGB\44(=/X;:
M'^O*4,US/7S2;O+8=J-B3I^@::T;!57<0C' E3^D/Y0MGQHWAEN2VF/O,P)!
M@B?=*6UE2X*7AIYN8N1>$"R(@!EM:9GX<\5[=M4%B=IA&6O,W' M-][C=4C&
MN$N=>C\N^&67.RQ,G+?TN^:P& 3O00Q*\J2>CAV2]X'U'VOS!@(JLG%5=;<@
M<VH;(Q8&<QH\?.CUNY'%AJY*1S@V4 %X#+YV\-7<"R/:_3]]HD?+"?49\\QY
M^-L*99R.&F?FO!.DNYDC:!I$&5701=B"S4E\^^T$T 7W45PPH-@S9#\O1CUY
M\Z:L7,UXW_"/CQU5D?T&OIB"JMN$%Q^ZW[D Q""XA>4A.TL.E )&Q;Q&FD=O
M<CAS.LBI)SY)_C3LY==1FV]2]LG=@+];,JX#O21LZ[\2J(RC&?HQ"I7]#JN&
MO:[X,=[AK<[DG8YN$5-^N*K!MZ]E7-ET)>5H8;DUDOJYH&MLMGZ0PY+2XYMC
M:M/Q(A#H#0+7R!L:0O0/;W>.O-?+)X+1'WQ?W7R*FQH66K7"C=E>J]M^[009
M\FKAS#,*OQ",'G*V.6/990151 %/1W>^S<V^JXALW1E*PWJ4E4^$J,7%U6@S
M%Q6:F<44Y2^_=57$H9V 9:L55%EY$F5FW"7,1@6^!,#B?7NM+UQ;X ZNH@(-
MF6:W1]O61N%"L[BES5M[ DKV<GU=NH_>;+)136."V[<^NAIS4I,$#Y6PR9)U
M?LH!X%0#HU-$/9=ITL0-.%P H[;5*?$[$F7V!B,*2*9JT&\?Y86;L3$AJZ5-
M%ORC&B!TLN_VKC8%P(L>OW# ' !TBX<NE\VA 9_ZIOFWU1=.1D]'QB8O*ZOT
MD-',<8T:$1VOM$%ML+GH[/%0K>1\%^A'\F5BI@*8\)X=TF:@R9S!O6UD>2L>
MLJZ$JU0)N-]7^,D)\E!WV&S3+J<R.AF&"4^Y$V//.L=W&).YO$;GEBH9)]MR
M03Y>;FY)@UW6D%.P]</I?3CU8/LCX:,4LWU54N+T]Q>FW7!OEC-U2.8'_2K7
MT@-,U>"5X7L?0OVQW1.LF'QTPW6QARC_/F^9!K0&TS41B!LE2GR]T61J[GW/
MK'W@<*Y$ .QIX$7LA5U!=Q (+P6?O2GX#C'\QNL .!D3$/?C +# ?;8:SSHB
M2X-)Q6G5>6KP?72<OIRA 9HGZXIT7XFI;TR^J'3B4FF#9:HSQW=8C:^@M9YK
M*F<=:'[]65F&7#\QERN%2,N6$FZ[SIZ,MN8BV5ILA\S6H9[(,[KGIIE$H[Z+
M&_$>5D8#WOXO257&>IUB";6$7"VU7NEF)8PM^]+B<8QE!F&WM+3AY45]*3
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
MZ<[$6P< +Q#$^G\"(Q=>2?+%UXA:47@":2L9],-\$%S2RS]@D10(BQI?M1\
M:SS)E!B$&KR9%43DB [H&G4MY1Q2,\P3\G#R_LY.:?NTTNGI_8QMA#%:LNQ\
M%PS)R'WWMEN+?BJ#V-V:<\0C? -R]'ZL#B0?@VRO/CJ9CIB[66=N-<%S^7B3
M'<=E3_KZ6 4-:O!H+3=8VW1Z9,''FGDM.>P2XC'MEK[.W:U/(T,7;,JG+*%O
M.U]QX$*46B^(Q1+,$C:_6M'TP*N*\A^=AIZG#5&#8QHE-M>3*WF& ^]483EQ
M39_;N<X]T-5'HJ0(PI$.'T7RC&A;P@/UV6X8[R]]K5KHZ,C]F)7;;(N6=DZ_
M4INT#FOVE8=9EBN='D^.!G[^U=;U%QZRCO.8_)WK^H\EF/\6)P%WYO;\KY 7
M4,?Z$#.YW>2M#91[(RB+BJ L3NT<.0!BXN1W)X=#5$>"YW>,!RA1O 4@RO!'
MD]<0.VA**4U>*M!KS[0(M/:@T)2G-+O6NKMLXZ5L^0P25K&-3O<L.O1 +")!
M2N\FJR[I3!F[,IH&GV$F+D]L(*:L'K4]TN K_@O;T;4G94);&W:^DP5B*2!H
MC@Q,VT(MMI*^V"_84'V_&4+@F_3?^GIMOFL@A">4.IO2['&2P.&HY9[O@VD/
MU IT6@;?)82WFVX',7Z3K?9%<H[Z..MZ5Z@B=EI]&=:'1Q09(I','*1V:4^.
MK5(HP^T1T1<F:A(5;KB=Z &2*UM?) O5(J7)BW6NY5B$G;H^413TKE%TQR@F
MQ#TBE"Q\ =%D,V@CB!\U^I4\O6?V 4EGPA$XM..LT@>Q"D3_@+)IWQMNNM.\
M["?9$4F-<8(H3]7LD);Z&@/ V?G6HO]=C1NU^DIV7DW)>H(G)<"(+H8D2=8,
M!:53Z#-999HBKU[X9#^+MY1+PH:NPQZ(!HV3M=V*OBQ51E3F6<*@QIT[ %8R
MQLJ@K'HU6MG[HP#>58Q\J?P L!:;#V(G7[R_+S87Q[Q5OV1/]@>AC4)GYC$0
MVLCC:O9B9NLD(][<.?YFHGXRNG&>M@X5$;K/JU9%]1.4G5+;?*6,;(_@E$4
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
MB&SEV,O3>[=ZCBGX_Z8]&UP=?#$A,GS;^$7\V^0[VOOG&Y##KT9V&QRZ^>0
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
M;NL342YX;,6W_D'J3!VXY/L)8MB(.^,E3;IGQX$,VM\V9%;S0')5UU;5K$A
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
M^-J?_KMJ!HEF<(L$ :A&,5]#=-,J,D%[;]9 1-@N$P''\**E6&QNQ8-9P9"
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
MVW#4;OH7=>%-NY;TA?CQPDOZ[7]02P,$%     @ A80*5YPWJ2(4$0  Q?4
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
MB'D\"]#R>.TDOK7YM7N$><D#;8BE^8/6('>70KC!.*_KD<[X0AS@V2LW6:!
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
M&KYT)?'=BM#!>EN\ZWS_NXQL++N9N'=']>MRCW]&.BU4$&1O_;L K#F+T[C
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
M/__ M>B_#@X6__$?/TA(V-6<#0W5VQ@U_:ZD6W]SHM2*!TB"3;-5QEWQ>-
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
MPL:AD@#MG1!?.B\4N=JTQ B4[RE:VFOB^RB/5W;#H%Y7/PBJ=/T$#;FW"09
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
M'.-(N!20SVE.</G?\[2_VGF4EO>?-*_#6L_Z>1Z(N7TR-]+<^. \J@&P-9]
MVF((LN-=R-XB\)U A-^R-9MW"V!8)7[PTHMRHRP+H0R@E2'"5;4NDW_"_%JF
M&T+C[-_CXN&!).PDPQDI#T^^%Z?B KW'FJFZ9KB9D6%IJ&/K</1S&8Y2?,_L
MZ^:)(YNBBT:C3"];DN6,#FW9G1--^?^X*G\4. J-AB*!A44WZ@RUV(XVXUH5
MD"E@4Z>QC?!%$CKIJ=07;!J#6GK&Y?"OK-%,24+3)E21,GZRD*V,T]8-&YG'
MF*A+E0TR,;: TP"G\ 7+AC="6\EIJ-DEQ6Z<LI<@#SQ\L+L-VO<94+1OHQ?T
MU!NIYW/1P1@X$CAX",6=!ECKU'<:W)I +(&K=#:B 3XH(EQ[('WM7)V^YR9Q
MLN9OGX71&EW>)O%]%/X]=&B^J*JA!2),H'&8MB7.+^^N:)M9Q4C6&E8N.KY/
MX[MX%:5%M<.7-O^*)#$[?Z0JFP9AJNJ+<:9&1IXQSB$7\0#:H8M#H\TO6[(H
M:H31MI(.&UY T$C@4=&--F.LMJ/.^-8%"3Z[/$YQGI_@?)7%VZK5DN^B##F#
M#=2!9H"!L>'%V25X\C^X"=IX,LSHDDNP?+\M$SAV#(<5@>IH(4XXV^I$AX$M
M"8)TL 1^N'MXF-/DO59$+4W^KDM*@!D5O0S)!D62'H(.P=ZZER_^R[T"I^71
MA(\D;8X<?\3]'93V*LW;<QN5T6_(S4[ QSH'I_K7W99FEK7D@AT:#_W:V@$(
M9'A'B:^?S=K=5\RVWB;"'^ ^.'N'$. [V*.OWG+VII)^R[>=-0KL<NC/')S*
M+6!^T!EH>+C,[J,T_C<?KHY)FM/)W;J>_K6'LLN[\HJ:.$JNZ2>XK"PCK\$"
M:K/Z]8%LCHP (*V 7..!;) N@L#YD<_79E/3#!:[Q"-TNF$)Q'P[;@&V-\C[
MX=4#7N\2?'G77&E8G:2_884F5 M"KFKU>V!KM;%OM2P=P;_O=7.L?8'E8FI9
MRP1?$':&!AG7;<)K)4L+G5=)3EXG1";<.U9'IU"P9.]2*W$VDC4*3;59]!M7
M0K-9A)D*O:JWHI[A&_14ZTWTO"]HKLB)+20[ITH5DB 'P*2V@8\/&-R8CU^I
MM>O34^7^G;DDCC8=W#N_9.P)V?$CJ5+_^)#&=I"$;'>;XW_M*'M/'_D!=U4&
M9I*K4RZUW-B13&49/JDR>-(.5UK=Y?XQPOQYX.''V*O$L0.$\46ETAE0]'9]
MP@8NXS%Y&8R9@PYH2H$9O46"0Y J11D-H6!)2)4=620A1LDF"=%(CDY"E+9A
MDQ"3&WT2HM=NSTMGE(.8^Y<X=X28@RB5NCF(P78(IK"[Z(TDT0M5/X9*:"0U
MY&8A6:'UH".$1G')GLV&!(;^(RZ_=A?Z<ODVZG460P#^UYS.GD_S(MY$1>\
MO?QA]97%AR.!W34'GDA+S>O0+%%8TL_88LY1GN\VV[+\!MM>TTB%A;6BMXC-
M;]R%<5>N#5^9!?".!TN%Y:;=>OV@Z?;FXP7B.UQ?T&_5?V>3 @^!@"+9=<%
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
MQ<T33A[Q!Y(6#^*RUE@SC@-3W\Q$Q!<=0Z[ECVP#1%B0FEY2T/SX.KBOA->
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
M6)Y!HEP$:4)F&!D![=TF2-$ H82L!HAWCN[S 2)UB@^"]B-*<IQ& Z'=YS)
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
M*;(HJH:;D_"W790BY<OVE87T"U:6T2GHFIN%M#\>8!N0FY4(03NY3N4^GX/
MK6/<MXW[M+?(-;;-&,C5J7S E9DCF"# QZ%1)@C2ZHYI=5$]SV@^00 PD#L3
M*0.;$X1;%%.'O\"+X)F^/$=?IB1B7N(4%#4]E TS>=!GXYI#AB %CV8WD'N6
MB-2>6.B+XO,TH]9ZOIKA(*&O[;'S"0D%@]H.A>> %&L[)M8ZM?@<,P$W@_%
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
M4G.5 E7Q3J<H0:M(J""?BE6.I;+F&R -@Z'J=7V"A'65F(K/TM^#W8O5"M'
M$]3H1D_\SG!"_.".N,+*)^*$W:/5+UC?KM$HZ#K&C(V@!3N=6D;:214/2-47
M^I][,H+\]?\!4$L! A0#%     @ A80*5^HV_C$\"0  \C$   \
M     ( !     &5X:&EB:70S,2TQ+FAT;5!+ 0(4 Q0    ( (6$"E=)QJ%F
M10D  ! R   /              "  6D)  !E>&AI8FET,S$M,BYH=&U02P$"
M% ,4    " "%A I7([>;/& %  "$&P  #P              @ ';$@  97AH
M:6)I=#,R+3$N:'1M4$L! A0#%     @ A80*5R:/^F@P20$ +;82  L
M         ( !:!@  &9O<FTQ,'$N:'1M4$L! A0#%     @ A80*5S,$B\!+
M<0$ .+@!  H              ( !P6$! &EM86=E,"YJ<&=02P$"% ,4
M" "%A I7.=DF6.T)  #%7   $0              @ $TTP( =&%C="TR,#(S
M,#8S,"YX<V102P$"% ,4    " "%A I7S"@^?(0.  "BQ0  %0
M    @ %0W0( =&%C="TR,#(S,#8S,%]C86PN>&UL4$L! A0#%     @ A80*
M5YPWJ2(4$0  Q?4  !4              ( !!^P" '1A8W0M,C R,S V,S!?
M9&5F+GAM;%!+ 0(4 Q0    ( (6$"E<S?1P. EX  *DF!0 5
M  "  4[] @!T86-T+3(P,C,P-C,P7VQA8BYX;6Q02P$"% ,4    " "%A I7
M8W45K:HK  "HT ( %0              @ &#6P, =&%C="TR,#(S,#8S,%]P
<<F4N>&UL4$L%!@     *  H <P(  &"' P    $!

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
