<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:tact="http://transact-tech.com/20211231"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  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-20211231.xsd" xlink:type="simple"/>
    <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="c20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="c20220228">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2022-02-28</instant>
        </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="c20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_StatementClassOfStockAxis_SeriesAPreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:SeriesAPreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementClassOfStockAxis_SeriesAPreferredStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:SeriesAPreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20200101to20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20191231_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>2019-12-31</instant>
        </period>
    </context>
    <context id="c20191231_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>2019-12-31</instant>
        </period>
    </context>
    <context id="c20191231_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>2019-12-31</instant>
        </period>
    </context>
    <context id="c20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="c20191231_StatementEquityComponentsAxis_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="c20191231_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>2019-12-31</instant>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </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="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="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="c20201231_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>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_StatementEquityComponentsAxis_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_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>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_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>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_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>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_StatementEquityComponentsAxis_TreasuryStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-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="c20201016to20201016">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2020-10-16</startDate>
            <endDate>2020-10-16</endDate>
        </period>
    </context>
    <context id="c20210816to20210816">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2021-08-16</startDate>
            <endDate>2021-08-16</endDate>
        </period>
    </context>
    <context id="c20200501_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-01</instant>
        </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="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_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:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_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:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_ToolsDiesAndMoldsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ToolsDiesAndMoldsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200228to20200228_PropertyPlantAndEquipmentByTypeAxis_BuildingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-02-28</startDate>
            <endDate>2020-02-28</endDate>
        </period>
    </context>
    <context id="c20210420to20210420_PropertyPlantAndEquipmentByTypeAxis_FacilityInHamdenConnecticutMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FacilityInHamdenConnecticutMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-20</startDate>
            <endDate>2021-04-20</endDate>
        </period>
    </context>
    <context id="c20211231_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_BuildingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PrintrexMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ProductOrServiceAxis_LotteryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:LotteryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ProductOrServiceAxis_LotteryMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:LotteryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PrintrexMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ProductOrServiceAxis_PrintrexMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PrintrexMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ProductOrServiceAxis_PrintrexMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PrintrexMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ProductOrServiceAxis_LotteryMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:LotteryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PrintrexMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">tact:PrintrexMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230101Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20220101Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2022-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:InternationalGameTechnologyPlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_ScientificGamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:ScientificGamesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:InternationalGameTechnologyPlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:InternationalGameTechnologyPlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_ScientificGamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:ScientificGamesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:InternationalGameTechnologyPlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_NcrCorporationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:NcrCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_NcrCorporationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tact:NcrCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_BalanceSheetLocationAxis_OtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_BalanceSheetLocationAxis_OtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FurnitureAndOfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:ComputerSoftwareAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FixedAssetsExcludingConstructionInProcessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tact:FixedAssetsExcludingConstructionInProcessMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_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>2021-12-31</instant>
        </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="c20210701to20210701_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tact:PaycheckProtectionProgramLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-07-01</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_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:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20200101to20201231_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tact:EquityIncentivePlan2005AndEquityIncentivePlan2014Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20170101to20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_IncomeTaxAuthorityAxis_DomesticCountryMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_TaxCreditCarryforwardAxis_ResearchMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TaxCreditCarryforwardAxis">us-gaap:ResearchMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20191231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="c20201231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">us-gaap:ValuationAllowanceOperatingLossCarryforwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_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>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_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>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20050101to20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2005-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="c20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">srt:ReportableGeographicalComponentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_EuropeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_PacificRimMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:PacificRimMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_EuropeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:InternationalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_PacificRimMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tact:PacificRimMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20201001to20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="c20200401to20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="c20211001to20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2021-10-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="c20200701to20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="c20210701to20210930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="c20210401to20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="c20210101to20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="c20200101to20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001017303</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <unit id="U001">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="U002">
        <measure>shares</measure>
    </unit>
    <unit id="U003">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U004">
        <measure>tact:Segment</measure>
    </unit>
    <unit id="U005">
        <measure>tact:Solution</measure>
    </unit>
    <unit id="U006">
        <measure>tact:Manufacturer</measure>
    </unit>
    <unit id="U007">
        <measure>pure</measure>
    </unit>
    <unit id="U008">
        <measure>tact:Plan</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="c20210101to20211231"
      id="Fact_ffa7a4e04ace44cb9efb634a1c9753bb">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate
      contextRef="c20210101to20211231"
      id="Fact_c01b39563da347088761db721d01eb77">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="c20210101to20211231"
      id="Fact_bc862c9996254c50b5519b236aa9dccf">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="c20210101to20211231"
      id="Fact_6e4861eef3894411846866dff14dc9d3">FY</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="c20210101to20211231"
      id="Fact_9f6272f221ba4cc1b4401640ec30f61a">0001017303</dei:EntityCentralIndexKey>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_BuildingMember"
      id="Fact_0a53edda34ca481aa7934ea4ab7d186a">P4Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="c20211231_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230101Member"
      id="Fact_0fb767fdbb19460d8f1b18e429c9fbeb">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <dei:AuditorFirmId
      contextRef="c20210101to20211231"
      id="Fact_5e122460796c4895bd008c99bd8b8564">688</dei:AuditorFirmId>
    <dei:DocumentType
      contextRef="c20210101to20211231"
      id="Fact_81399307730d4ea38d9fd7590a530cf8">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="c20210101to20211231"
      id="Fact_0a4e38807fde48da86cb88b14c2723d7">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="c20210101to20211231"
      id="Fact_84104798d0d64e77b9c639b1e0a1ee95">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="c20210101to20211231"
      id="Fact_c4f1a6a0a9f442c29319bc6386fbbca4">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="c20210101to20211231"
      id="Fact_68d13cc34fa44214b6a5c2812b655a1c">0-21121</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="c20210101to20211231"
      id="Fact_f3cc80f94a61485aa4a7bdd1cf8a9490">TRANSACT TECHNOLOGIES INC</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20210101to20211231"
      id="Fact_f875f8b8e6364abaa28a1d116703a7f0">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20210101to20211231"
      id="Fact_236f23f5b9c4401eb5f79116190db17b">06-1456680</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20210101to20211231"
      id="Fact_bdadc0f20df04873928d30a0de334456">One Hamden Center</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="c20210101to20211231"
      id="Fact_b7f379fe0d4d496bbc8e2b1b06a8cfa7">2319 Whitney Avenue, Suite 3B</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="c20210101to20211231"
      id="Fact_868bc5e3a11d41b68b51dadc644d1250">Hamden</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20210101to20211231"
      id="Fact_dba64ce06c074350bdaa251e54dd8078">CT</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20210101to20211231"
      id="Fact_5ab5ad85d7e34158b0849906648cd029">06518</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20210101to20211231"
      id="Fact_bb54dc2fb9dd455eaf1596cb2919b4b5">203</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20210101to20211231"
      id="Fact_0a3568deb2bd4a388877d31a229803d0">859-6800</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="c20210101to20211231"
      id="Fact_e65e410b2685465cb71101632415ba50">Common stock, par value $0.01 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20210101to20211231"
      id="Fact_1972a8701d3048dc842ce99d3ed9ce34">TACT</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20210101to20211231"
      id="Fact_eca10fab5b624c64a854c3bc649be36a">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="c20210101to20211231"
      id="Fact_23f13135cd004f1291f9f8a4476ab11d">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="c20210101to20211231"
      id="Fact_4f0d4128207a4dacbcfbff463aeac3b3">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="c20210101to20211231"
      id="Fact_ef5000b06c064507aaaddcb277c1a071">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="c20210101to20211231"
      id="Fact_63bfa292bd874c3590ea3f9399626934">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="c20210101to20211231"
      id="Fact_5c23836eb08c48d2b775d2ce2c900f58">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="c20210101to20211231"
      id="Fact_f48ea49b5342471f99b184e2fe3d80df">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20210101to20211231"
      id="Fact_5f8d4d1f6c284ce1ad6cc5140bfd3d57">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="c20210101to20211231"
      id="Fact_15a44edf1bbb4cadb5ad6f6952c05c0f">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="c20210101to20211231"
      id="Fact_08d23d8517724635922d5ce9898b42f9">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="c20210630"
      decimals="0"
      id="Fact_b815248b35df42b6b6db096eaa55d96c"
      unitRef="U001">119400000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="c20220228"
      decimals="INF"
      id="Fact_e365e59451374702adc76737fd37b120"
      unitRef="U002">9889745</dei:EntityCommonStockSharesOutstanding>
    <dei:AuditorName
      contextRef="c20210101to20211231"
      id="Fact_23105aaff6b443d68cc6700939a027ec">Marcum LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="c20210101to20211231"
      id="Fact_b17001a6f4d84c5f89c389ba35595b9b">Hartford, Connecticut</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20211231"
      decimals="-3"
      id="Fact_6cb2aa7a89b1444bbea80af4f0b0cc94"
      unitRef="U001">19457000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20201231"
      decimals="-3"
      id="Fact_1384735c58324f5f993741a376fec0e0"
      unitRef="U001">10359000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_162fd256363f42e0a7b101c890aeece9"
      unitRef="U001">7593000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_36b2a521a8f14c33bd2d6307140aa8b0"
      unitRef="U001">3377000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_92bd371ed4a04f48a03ba60a390a48fc"
      unitRef="U001">1500000</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_19f0c99d442640d7ac133b31b22865e3"
      unitRef="U001">0</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:NotesAndLoansReceivableNetCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_584c81f472b742c892af3d7f381e7756"
      unitRef="U001">0</us-gaap:NotesAndLoansReceivableNetCurrent>
    <us-gaap:NotesAndLoansReceivableNetCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_498a7bd579f34747b71adb43dd15d143"
      unitRef="U001">100000</us-gaap:NotesAndLoansReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_6046c20402bc4a75a29c1d7adbe18130"
      unitRef="U001">7720000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_f53ff3ffe5c94b8bb47f21f73fb7fbe4"
      unitRef="U001">11286000</us-gaap:InventoryNet>
    <us-gaap:PrepaidTaxes
      contextRef="c20211231"
      decimals="-3"
      id="Fact_8d4130cb137d456e9f3c5ec9d95782b0"
      unitRef="U001">137000</us-gaap:PrepaidTaxes>
    <us-gaap:PrepaidTaxes
      contextRef="c20201231"
      decimals="-3"
      id="Fact_5ac292f6466848e486af3c5a759d6b49"
      unitRef="U001">2409000</us-gaap:PrepaidTaxes>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_fe40ba50c62b4873a91ecad23710696c"
      unitRef="U001">738000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_2ead9d18f1fa40e2b252d51b09e7a55e"
      unitRef="U001">644000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e00537d3834a4b8c9f94479b36f0a38b"
      unitRef="U001">37145000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_e76b4ca2187340dd8bb6f4acfeed5ac2"
      unitRef="U001">28175000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e63b912f6a6046a4858bdd6889971c31"
      unitRef="U001">2684000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_4ce8e4c639b549f087d47b4372793d60"
      unitRef="U001">1950000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:NotesAndLoansReceivableNetNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e6b8926701b34d248452c39b7f55f8a3"
      unitRef="U001">0</us-gaap:NotesAndLoansReceivableNetNoncurrent>
    <us-gaap:NotesAndLoansReceivableNetNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_1a4ce2bd651a4bb0837de6bb13bf8a34"
      unitRef="U001">1584000</us-gaap:NotesAndLoansReceivableNetNoncurrent>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20211231"
      decimals="-3"
      id="Fact_3d9750ec049c4f778ada75d5c34e42c7"
      unitRef="U001">2553000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20201231"
      decimals="-3"
      id="Fact_8a1a51e5c03d4f9ea62eee35157d98d8"
      unitRef="U001">3618000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="c20211231"
      decimals="-3"
      id="Fact_d36bb891f1974c73ba9d6deec645598b"
      unitRef="U001">2621000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="c20201231"
      decimals="-3"
      id="Fact_9a59150ee37f4de3b08731eb5bca54eb"
      unitRef="U001">2621000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_b3d02eaa0a3741729347f8966b88887b"
      unitRef="U001">5141000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_a567596764fc4442b73030a5ba2546cd"
      unitRef="U001">2939000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="c20211231"
      decimals="-3"
      id="Fact_639e30276e1f4f658fcaf8df4290ca0e"
      unitRef="U001">397000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="c20201231"
      decimals="-3"
      id="Fact_7a3e9719417e4152b57eedafe51f8e77"
      unitRef="U001">583000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_c959393fccdc41f1999789535e7a79ba"
      unitRef="U001">400000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_506604552f7a4ad1a370a76b433c6983"
      unitRef="U001">777000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_d3e2d8fa4b564f5581fac9b431a28233"
      unitRef="U001">13796000</us-gaap:AssetsNoncurrent>
    <us-gaap:AssetsNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_95edf9c476ab4df1af892df901fcb796"
      unitRef="U001">14072000</us-gaap:AssetsNoncurrent>
    <us-gaap:Assets
      contextRef="c20211231"
      decimals="-3"
      id="Fact_698497e70b534d7692473e82010c4072"
      unitRef="U001">50941000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20201231"
      decimals="-3"
      id="Fact_490064fea4e84de8ae1d06b34639460f"
      unitRef="U001">42247000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_b2044052ac8346d7926cd1b41ff2f00a"
      unitRef="U001">4308000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_3ba7c38ad7794fd5be8aca869a617feb"
      unitRef="U001">1691000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_0e8a1bd2f60b431790d966d785ddd3a7"
      unitRef="U001">3894000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_198f44772b4045088c39530f0af1f8a5"
      unitRef="U001">3665000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_2b3ffd0d8f964100a4ac7498f0c3cbd7"
      unitRef="U001">789000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_34822d5cc2614acea9cdc7083bddc28d"
      unitRef="U001">837000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4fa3466082464ccd99dd084603009b1f"
      unitRef="U001">805000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_a711a5b6d1af4293bb1a7caaf3bec921"
      unitRef="U001">504000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_37235067eba349cf864f84a0ba630bd5"
      unitRef="U001">9796000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_71f5f2114412483cb972b95553cb2da2"
      unitRef="U001">6697000</us-gaap:LiabilitiesCurrent>
    <us-gaap:UnsecuredLongTermDebt
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e459388b1e914124b3baa6d478558dee"
      unitRef="U001">0</us-gaap:UnsecuredLongTermDebt>
    <us-gaap:UnsecuredLongTermDebt
      contextRef="c20201231"
      decimals="-3"
      id="Fact_ae41bc9653e94cb89c54f1754fb87eb0"
      unitRef="U001">2173000</us-gaap:UnsecuredLongTermDebt>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_40c7bc4bb807424a8dd43f89132cd62f"
      unitRef="U001">186000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_1e9d96364dd44d8e8e057cb0c39536b8"
      unitRef="U001">111000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_1e53514faf6a4ebab7bfe3d8920279a4"
      unitRef="U001">1781000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_95005edc5da44464a40eadafb4090d34"
      unitRef="U001">2864000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4a851d07197f461db51aefa2b3993859"
      unitRef="U001">187000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_8710385969124270b7e377cdb3f79c80"
      unitRef="U001">166000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_b01a76739a19455cba1c858939a71086"
      unitRef="U001">2154000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_794bf7ef94f1464bb217f9fc91d51470"
      unitRef="U001">5314000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="c20211231"
      decimals="-3"
      id="Fact_68662d5bb87943be85bfd33c21dfb321"
      unitRef="U001">11950000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="c20201231"
      decimals="-3"
      id="Fact_88e504de076844e5b6ebbee1cf83ab98"
      unitRef="U001">12011000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20211231"
      id="Fact_1ef3493c51c7434da09ecab64a6cee20"
      unitRef="U001"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20201231"
      id="Fact_334448075d404c1faf6cefe337bbcce3"
      unitRef="U001"
      xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c20201231"
      decimals="2"
      id="Fact_e03c4000c1444162b3d5f40bd1df04db"
      unitRef="U003">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c20211231"
      decimals="2"
      id="Fact_31138f2c191e447981831450a10feaf7"
      unitRef="U003">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="c20201231"
      decimals="0"
      id="Fact_386081d4c791452b81e15a1cc10ccfe4"
      unitRef="U002">4800000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="c20211231"
      decimals="0"
      id="Fact_a84809d944984708b8f18979756e32c1"
      unitRef="U002">4800000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="c20201231"
      decimals="INF"
      id="Fact_57625c87cca043cc919661a54a2bd97c"
      unitRef="U002">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="c20211231"
      decimals="INF"
      id="Fact_85519cc14dd94e9e8bc663ab9cb2149d"
      unitRef="U002">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="c20201231"
      decimals="INF"
      id="Fact_1423b80b43dc4d20a11e90d5970fe45d"
      unitRef="U002">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="c20211231"
      decimals="INF"
      id="Fact_202be78d04434c0b8d1580619dfd6479"
      unitRef="U002">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="c20211231"
      decimals="-3"
      id="Fact_d278b65b2a4140ed86bb3c41ae5345cc"
      unitRef="U001">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="c20201231"
      decimals="-3"
      id="Fact_347438ffe5574863816a56f513e6a49a"
      unitRef="U001">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c20201231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="2"
      id="Fact_e58de175e0de4aa3a8f8e9b086a7b04d"
      unitRef="U003">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c20211231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="2"
      id="Fact_477c8e6499f74698a05e96d8e2276b8d"
      unitRef="U003">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="c20201231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="0"
      id="Fact_ba3e080b8a9a4e23a4a13ddb100b5d3d"
      unitRef="U002">200000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="c20211231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="0"
      id="Fact_a7a067bf57764e5db4102215ed41daf9"
      unitRef="U002">200000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="c20201231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="INF"
      id="Fact_ae54c67a9a7549b4b6c6fb8becdf6ca8"
      unitRef="U002">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="c20211231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="INF"
      id="Fact_bb9ef0eb2a244851bb0cbef128747f74"
      unitRef="U002">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="c20201231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="INF"
      id="Fact_feedc2ccdb4d408e8fa579c799f9ecf1"
      unitRef="U002">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="c20211231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="INF"
      id="Fact_840b242ff0b0446ebdce7724139a6f90"
      unitRef="U002">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="c20211231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="-3"
      id="Fact_27a25c167c444f67ba1fcd636b6626f7"
      unitRef="U001">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="c20201231_StatementClassOfStockAxis_SeriesAPreferredStockMember"
      decimals="-3"
      id="Fact_e6b330651d9040ba979f8aabc1d8aa42"
      unitRef="U001">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20201231"
      decimals="2"
      id="Fact_aec3bedbee4640e88a2bbc1710c07589"
      unitRef="U003">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20211231"
      decimals="2"
      id="Fact_5841e8c01523467f8346902ba9f69b23"
      unitRef="U003">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20201231"
      decimals="0"
      id="Fact_562e2c5083ff43d7a847773ec901b00e"
      unitRef="U002">20000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20211231"
      decimals="0"
      id="Fact_bf7ab2975eb1449897f61d5d314fac18"
      unitRef="U002">20000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20211231"
      decimals="0"
      id="Fact_329fced3f6e34910beb182ad37f7e71f"
      unitRef="U002">13917731</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20201231"
      decimals="0"
      id="Fact_e0918dfd4eb44ac4a63128173f3748cb"
      unitRef="U002">12976227</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20211231"
      decimals="0"
      id="Fact_e820ee83898144fab85157ded895ef57"
      unitRef="U002">9872889</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20201231"
      decimals="0"
      id="Fact_0299730f1c9341a38d88d2f834ccb66e"
      unitRef="U002">8931385</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="c20211231"
      decimals="-3"
      id="Fact_0b857345770243489da18b1237d2930f"
      unitRef="U001">139000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="c20201231"
      decimals="-3"
      id="Fact_6d0c30cf11f8427996bcc953d81ec302"
      unitRef="U001">130000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4aa4bf8f26bb47a5b55babb809f22be1"
      unitRef="U001">55246000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="c20201231"
      decimals="-3"
      id="Fact_f4d228c15f6b44a98b64f321a4ac272f"
      unitRef="U001">42536000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20211231"
      decimals="-3"
      id="Fact_36152f25c2864ee5a2570c309f585a36"
      unitRef="U001">15573000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20201231"
      decimals="-3"
      id="Fact_bcb8173eacb946abaf4fc3229c29a2a2"
      unitRef="U001">19718000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20211231"
      decimals="-3"
      id="Fact_27d0b76eb09246079217aa03cf5c6066"
      unitRef="U001">143000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20201231"
      decimals="-3"
      id="Fact_cd2d5004f6294ff1baba40ae0f364556"
      unitRef="U001">-38000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:TreasuryStockShares
      contextRef="c20201231"
      decimals="0"
      id="Fact_43b2d251cd8749e9aa313ee2802c8e5c"
      unitRef="U002">4044842</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="c20211231"
      decimals="0"
      id="Fact_a0a0cb2cacca42678c06af9a9670c5a4"
      unitRef="U002">4044842</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="c20211231"
      decimals="-3"
      id="Fact_f74db5c946dd4decb6899da23774252d"
      unitRef="U001">32110000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="c20201231"
      decimals="-3"
      id="Fact_c8871a7fd06c4bae8580b3acdc3b27fa"
      unitRef="U001">32110000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="c20211231"
      decimals="-3"
      id="Fact_93f88f915808430bb1bf2e8f7a00e1aa"
      unitRef="U001">38991000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20201231"
      decimals="-3"
      id="Fact_0518b692b1bd4049a8a152a0d2ba51ea"
      unitRef="U001">30236000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20211231"
      decimals="-3"
      id="Fact_24495cfce4b14138af330bf96d07c724"
      unitRef="U001">50941000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20201231"
      decimals="-3"
      id="Fact_893cbeea997d494e9e9048541bc38421"
      unitRef="U001">42247000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_35e4184917f94cd7b154ba19afe3ac7f"
      unitRef="U001">39386000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_bf526f7de43f4350a7424df5a0c1086d"
      unitRef="U001">30595000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfRevenue
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_654e9970f6144f748b2a04a706fce352"
      unitRef="U001">24137000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_d182c079419a4fc5b31550cfb8997a8c"
      unitRef="U001">17666000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_0461bef1b85c4c02b8ae3e5da9aca757"
      unitRef="U001">15249000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_641cac8dc01841acb5d344c242227e30"
      unitRef="U001">12929000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_b001b0a889c946a8a08b7a95325b80a8"
      unitRef="U001">7475000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_b4a9a72d359e452691c62462dd0fdf5c"
      unitRef="U001">5703000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_a647540563f842779633859c3479dd39"
      unitRef="U001">7658000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_219d50e98eaa4062afa6fee2708b7611"
      unitRef="U001">6144000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_d2c6adbe189f45a181ab959a47b4cce0"
      unitRef="U001">9626000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_aa79d9f30db94ff79d8a0c2dd50fffb5"
      unitRef="U001">9255000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingExpenses
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_405178f352634dd685cca0b3e0f4079b"
      unitRef="U001">24759000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_35d0a588d761452b894a36f722ae481f"
      unitRef="U001">21102000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_a47b7e9ecfe44ecb96e3ac04fbabb65e"
      unitRef="U001">-9510000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_d4cc0f924ac546ff8cbc2d4af0bc4c86"
      unitRef="U001">-8173000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_2b1fa58f746c4ae686b8e5e5f07f69d0"
      unitRef="U001">157000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_f95cfcf87a7a4749b2e8719e09475db7"
      unitRef="U001">130000</us-gaap:InterestExpense>
    <us-gaap:InterestIncomeDomesticDeposits
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_067f98c9b1d5457abb04e15a77941e70"
      unitRef="U001">61000</us-gaap:InterestIncomeDomesticDeposits>
    <us-gaap:InterestIncomeDomesticDeposits
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_ea6a05df907144818bd8a63308be7ad5"
      unitRef="U001">78000</us-gaap:InterestIncomeDomesticDeposits>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_93f0b7647b21460f96bd3b7cf820056b"
      unitRef="U001">-283000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_996394b430734e8a8f3855262a2b1db6"
      unitRef="U001">56000</us-gaap:OtherNonoperatingIncomeExpense>
    <tact:GainFromEmployeeRetentionCredit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_e6abc40133a94620b1ac1cb20db0a7fa"
      unitRef="U001">1500000</tact:GainFromEmployeeRetentionCredit>
    <tact:GainFromEmployeeRetentionCredit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_9537a2ff420a4c0093f0facffa204cad"
      unitRef="U001">0</tact:GainFromEmployeeRetentionCredit>
    <us-gaap:GainLossOnNonRecourseDebt
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_6d7a671cf6a7482b94db8c4134bbc6b3"
      unitRef="U001">2173000</us-gaap:GainLossOnNonRecourseDebt>
    <us-gaap:GainLossOnNonRecourseDebt
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_cda57c2f4097429ba03366f4739ff177"
      unitRef="U001">0</us-gaap:GainLossOnNonRecourseDebt>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_055a55a038a5448abd0c0cb3fc626395"
      unitRef="U001">3294000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_aa2682116c6b4fc2ab51bdda7550cb44"
      unitRef="U001">4000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_80eab53aefcf4ea885ac4b36127b5aa4"
      unitRef="U001">-6216000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_59591afaa71b40dd82b3412fe3e996db"
      unitRef="U001">-8169000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_6d69099fd92d4a16b1319235f2d99c54"
      unitRef="U001">-2071000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_2c34f405c75d49f0b6dd191a7df7048c"
      unitRef="U001">-2539000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_e457789168264fb982458c1c37ba1bd0"
      unitRef="U001">-4145000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_2b2be5d809ec40a3a7165a854694b178"
      unitRef="U001">-5630000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_e3e6c0c0209644018e5f06c41a0ff726"
      unitRef="U003">-0.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20200101to20201231"
      decimals="2"
      id="Fact_2a1c1c0fae98454789a17156fc8e33e8"
      unitRef="U003">-0.72</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_443a0deb93984c35b09888beb1bcbddf"
      unitRef="U003">-0.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20200101to20201231"
      decimals="2"
      id="Fact_d201e75fa86b46d5965a662b8396b62d"
      unitRef="U003">-0.72</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_7718d94863bc40eb879e406e66e1099a"
      unitRef="U002">9298000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_45fbb16dbaa348dbb2324826512b33a9"
      unitRef="U002">7827000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_d8cdb8cf53b64d25972abf745d00f20d"
      unitRef="U002">9298000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_8f4c8da32bde42bcbf59c5124899269f"
      unitRef="U002">7827000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_f5ebad797ca9488d9d4aad72dc748d97"
      unitRef="U001">-4145000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_2207a2968e1a44478d7b1cac8ce33c94"
      unitRef="U001">-5630000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_d13b2e2eb188405784aa9908893eacae"
      unitRef="U001">181000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_21b7bccbc88b49fda888dba84fe936a7"
      unitRef="U001">-7000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_28028b711a6444e7ad0d924a761590fb"
      unitRef="U001">-3964000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_9a0a13813e4445de9f22b0464b7228c3"
      unitRef="U001">-5637000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20191231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_ec13b7d0a06140f8a8df7fe41076192b"
      unitRef="U002">7470248</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20191231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_de62837f420a4cd5aa59a1f6e5d4e5a0"
      unitRef="U001">115000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20191231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_d0ac18882aad471880a6071daecb95f6"
      unitRef="U001">32604000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20191231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_b887b993ab654fc1877d9e3285cf187c"
      unitRef="U001">25348000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20191231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_c6bd4e4afc424a2d8420c06a60f47ae0"
      unitRef="U001">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20191231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_ac36fcd748b149c7acbbc9368da43ff3"
      unitRef="U001">-31000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20191231"
      decimals="-3"
      id="Fact_15730b40ff0246b78d8922bf1160e648"
      unitRef="U001">25926000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_f7951d06d6554ab2ac3de0649965c94d"
      unitRef="U002">62500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_7c11255936394d1790d1110b350d4e69"
      unitRef="U001">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_ba00ad813b31432a91b621a6d7bccd9c"
      unitRef="U001">374000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_36fa4b0d0c2943c4a9d59c172a5ea27f"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_7798b2fc4db14ad89d86645d27774816"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_5a9997a96ce7456e87d72192b3864121"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_00bc2d449c0d42698d465fcd012de2e4"
      unitRef="U001">375000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_bde1a24fdcdf4f43bdd5fec00f9026b5"
      unitRef="U002">32725</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_ba358e1edaec4e5bb07f28e6bd92936e"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_b429018f6dce4b3c8b5aa4c689517d37"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_cd4e2f7effd7473bb06997a9f730a832"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_5fe1d5593417455bbf9d5ec5db3f1436"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_7b1d2bc7dd3c40aa8d5863ba270ebead"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_4eb3b776b1ee4a92bfd536a4b4f929f9"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_12a620fd52784274acd8e3cdbca4736f"
      unitRef="U002">1380000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_957cb81078934bc2bcf023db458d2647"
      unitRef="U001">14000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_5551bf874e4b4be8962f4fab2a46fe25"
      unitRef="U001">8723000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_a56b8abe0f394228a3fffe041c8f84bb"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_849662b370ae4d3db2a92070bfab5419"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_8643107028ce4c7b87cc7ce0253a9090"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_33dc9ca0800c40e3a130145e2ea0b309"
      unitRef="U001">8737000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_11304ffcac68456981d4bdef1e4a3c2c"
      unitRef="U002">14088</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_b2a7aa74259040249ea619f91ea2faa1"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_9fd8adf31ec44f2a8b8e41c9127e472c"
      unitRef="U001">-41000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_286ccfe8aec145669884ccd6be1d3fd4"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_1689b9c7597a403db83edac0cb341f89"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_dcde440390184888bbcabd083eb7465a"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_3ba06fdb429541d99f9df068135d1794"
      unitRef="U001">-41000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_e45d608f93894eb2a55f0d5975deee39"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_7662728d927c41e385bb4f5f7e16a2ed"
      unitRef="U001">876000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_57e6f2b7019c4a25a47093ea01658a84"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_717e9cc192c642a18f214cd994644da4"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_14223890f7984ce896a48c5d1281a971"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_0979aa66adca4bc1ab406b849e9bf5ad"
      unitRef="U001">876000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_f5acc481762845989420bfed70060550"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_765d086023b84b37899570ce12167caa"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_ffbd3205ffdf4bf78a741a57ea4984a4"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_3ea27a2ce72b478ab9d67c963bd22776"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_36d0ca0e5ed14782b0b3847eaa2ef7dd"
      unitRef="U001">-7000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_1910e6379e244f19a8cf8e6d3a57fae8"
      unitRef="U001">-7000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_53385f43ec19431f85b5ad8efd0aff41"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_60ce58b9af0142c1b3e61b194370944d"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_6afa2e86fb1246f380ba914bc25a2088"
      unitRef="U001">-5630000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_b68d9f5d4c624027ab9c816f072adc94"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_323b1a7876dc41f5a8e9b22b7116182a"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_e759fe1d1421422ba52aeb37e09114ff"
      unitRef="U001">-5630000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_ecd0426e5fa44869b0676f3e87f99d8a"
      unitRef="U002">8931385</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20201231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_16634b60d45a429889a7650eb49d7c73"
      unitRef="U001">130000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20201231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_480e5eeaf49444deab4a382429aa7ef5"
      unitRef="U001">42536000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20201231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_9cf26f56eac540548a8e7eba2afa2cf5"
      unitRef="U001">19718000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20201231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_07175478f4c14b8cbda589f0cb9e8a53"
      unitRef="U001">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20201231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_1bfec91091d442dfbf99920d2fbff08b"
      unitRef="U001">-38000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20201231"
      decimals="-3"
      id="Fact_daadc181d7ea4beaa943e6b1c424e701"
      unitRef="U001">30236000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_dfc34ad3a98e42468999eaf1f51125fc"
      unitRef="U002">97000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_4a6dff39f57d4c8d9c3d5a93762264d7"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_4222c2183b1f47609236144b6463be95"
      unitRef="U001">436000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_98bab54933bd4b8ea13eb5ff122df1b2"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_a10495d46449416fbef6e90909b4c36d"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d9712c2d5fff4fbbb94a4e917f7cae71"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_aff38c56d73e4402ad7bb722e788e647"
      unitRef="U001">436000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercisedNetOfTaxBenefitExpense>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_c655686e313c4ee994276908fc7ddd9f"
      unitRef="U002">50525</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_2ae8080dca9b46aba09762da1239d875"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_738a69a9c8584a46be01ac66f4936af9"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_fa370f5a2b874baf9828153447afd81e"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_fd6ebf1bd614439ab29bc62a2093494d"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_193eb6a28e974805a74af53430081706"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_519091b39ed1465ead2001fb463e5986"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_ed509b25a13f495da7e3610b4c1ad717"
      unitRef="U002">842375</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_8fc550ebb3114b4386595141d71eb064"
      unitRef="U001">9000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_a1594ec7a8f1454887ccb38a1fdcb3b8"
      unitRef="U001">11201000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_1aeb6178667f4b98bbd9aa02d7cbe731"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_3bdaaf6e55154c87a264c00b3889baca"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_deb3f85f6bf84f4b9c5cd01815b64bdd"
      unitRef="U001">0</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_1b4b9e2014a0447d9a21deedc7fcce07"
      unitRef="U001">11210000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_8c5df7a018a74998932911bd4004c4dd"
      unitRef="U002">48396</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_083ead3f275c4d0ca0b9f5bd3d93f14a"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_5761852997984bdd8cf30ea0e1d8a606"
      unitRef="U001">-133000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_6462c8ca02434764bcd88eb00ff8a8ba"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_f3f4014f2e6343b991f3cf620a7a144d"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_3fc064fbe6264acc9b0b9d80496d7db2"
      unitRef="U001">0</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_eb6a7eec2cf84aefba67720e93dfe071"
      unitRef="U001">-133000</us-gaap:AdjustmentToAdditionalPaidInCapitalIncomeTaxEffectFromShareBasedCompensationNet>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_f078b5a58ba64c27937509dc745ba715"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_e9115147e286466a950a4850514813e4"
      unitRef="U001">1206000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f877810ea8d04030b61a644e18b36e9c"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_2440578cae0f46d6b995d02eda2aba68"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d44e5c8357314344bedd017d93260133"
      unitRef="U001">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_0654707e0cdb4597b9d2b9558777c490"
      unitRef="U001">1206000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_ffcf779217f04473ba4b370332600a6a"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_49c5463e66344ca2ad8c7aca5f59ae23"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f29ba7ac8770430eaeef7f017d498692"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_47bbcf8706714bf29630558fad88d352"
      unitRef="U001">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_2b280ac9c37d403b906057769afbc8f4"
      unitRef="U001">181000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_ae449a7f3e524605ac573624c901f5bd"
      unitRef="U001">181000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_1f6023f63a3248a691bacd097a0ebe6c"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_d3fc706206a64aafb6c4d240c615c7eb"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_339b0d5ede9c4085bc4fd1e5f8fc18da"
      unitRef="U001">-4145000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_566507c5615d4ae09dfa3068386c2473"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_20c30e1ff43f4772b3191bed42515684"
      unitRef="U001">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_0cfe6d1a0f3543019cd4c882872ff9fa"
      unitRef="U001">-4145000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_2e9a375cc75b455db056e13e2b0091d7"
      unitRef="U002">9872889</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_fed86ef9f87e4ce3abaf47766ecb4589"
      unitRef="U001">139000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_a410f4a29067434e9a3881e37898ae12"
      unitRef="U001">55246000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_ebf0ae8a767f49299349ffe281bbddb2"
      unitRef="U001">15573000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_TreasuryStockMember"
      decimals="-3"
      id="Fact_e4e57e4bb4c5491ba2c212dfd83d338d"
      unitRef="U001">-32110000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_eec7a50f27e84fa496c502f9aad07dd4"
      unitRef="U001">143000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20211231"
      decimals="-3"
      id="Fact_296b45cf70914c10a655602d7b14ed0e"
      unitRef="U001">38991000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_ceba85f2f57644d18317e1ae7c3573cf"
      unitRef="U001">-4145000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_639cc490056d4fe4953a99758c6ee7fd"
      unitRef="U001">-5630000</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_35ea5bb483ef46a68646835b4c967b7f"
      unitRef="U001">1206000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_e68c2570db4f437fb3084a861fe573b6"
      unitRef="U001">876000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationAndAmortization
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_008592a550f8459fa4e511bc1f1dfe91"
      unitRef="U001">957000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_1113fc73615b40fea5e1609fd12b43b3"
      unitRef="U001">1342000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_1a2a2f028b704e899a535d651fa1372c"
      unitRef="U001">-2150000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_a171648fc2a540bd96eb67b8d1ebe922"
      unitRef="U001">-367000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainLossOnSaleOfProperty
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_4fed4f15c099461c828e80058d5bc458"
      unitRef="U001">-9000</us-gaap:GainLossOnSaleOfProperty>
    <us-gaap:GainLossOnSaleOfProperty
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_0e48d22b297a496197c35ffdeffb3808"
      unitRef="U001">0</us-gaap:GainLossOnSaleOfProperty>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_f1b98056cbc546a4be801242430bc40f"
      unitRef="U001">-272000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_ccd9f48f901147b4b7ed2a2669e6a5e5"
      unitRef="U001">58000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:GainLossOnNonRecourseDebt
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_dc082257c74647e38c451e1c911589c5"
      unitRef="U001">2173000</us-gaap:GainLossOnNonRecourseDebt>
    <us-gaap:GainLossOnNonRecourseDebt
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_771ee614a7a1491ab9c9afff14601b5a"
      unitRef="U001">0</us-gaap:GainLossOnNonRecourseDebt>
    <us-gaap:IncreaseDecreaseInReceivables
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_e2813f6107744104b4491ae61f44d356"
      unitRef="U001">4217000</us-gaap:IncreaseDecreaseInReceivables>
    <us-gaap:IncreaseDecreaseInReceivables
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_15c85fdb773f4852a99e2e133dff87a9"
      unitRef="U001">-2975000</us-gaap:IncreaseDecreaseInReceivables>
    <tact:IncreaseDecreaseInEmployeeRetentionCreditReceivable
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_81817e191e2b4cdf839d968b5bb58cae"
      unitRef="U001">1500000</tact:IncreaseDecreaseInEmployeeRetentionCreditReceivable>
    <tact:IncreaseDecreaseInEmployeeRetentionCreditReceivable
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_ee450c5fcd414b91b4cf28dc2b189e0f"
      unitRef="U001">0</tact:IncreaseDecreaseInEmployeeRetentionCreditReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_2ebf13329fcf45688768709919844bb0"
      unitRef="U001">-3573000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_d352ec321eb24303838c17ec5092e47b"
      unitRef="U001">-876000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidTaxes
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_2106137153854e97bb0df24187f89ea4"
      unitRef="U001">-2210000</us-gaap:IncreaseDecreaseInPrepaidTaxes>
    <us-gaap:IncreaseDecreaseInPrepaidTaxes
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_09ca8fe7480541178225440dce7706d2"
      unitRef="U001">2226000</us-gaap:IncreaseDecreaseInPrepaidTaxes>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_48fd2a69ea044c3094be8d6a7be32c6b"
      unitRef="U001">-322000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_6558819fb97340cf8a2a1c57a5c203e4"
      unitRef="U001">198000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_007595949b08412080bbb19bb55e8a08"
      unitRef="U001">2534000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_da7244b186364c2b841e2d43bb6e9d30"
      unitRef="U001">-1276000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_054224914ac04f3a95b6ece011e81b3d"
      unitRef="U001">592000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_c25c2bd079d143d2b9cbecbe916d741c"
      unitRef="U001">176000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_8f52445b790745bdb9b46ad1155da7da"
      unitRef="U001">-2510000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_b434f83b0b004510913cb328ca21ef43"
      unitRef="U001">-3510000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_80f0ef048d3f42699a98f50970b19d90"
      unitRef="U001">1384000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_b98f649dc8d04621b5bd8d772b39117d"
      unitRef="U001">744000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_73978dc5ddc94bcd835e7df9721c7b41"
      unitRef="U001">8000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_24bd260a459d48d7a2969a753cc1b74c"
      unitRef="U001">0</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <tact:PaymentsForProceedsFromNotesReceivable
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_85d0f9a9066b484d962e445008f9cc9e"
      unitRef="U001">-1598000</tact:PaymentsForProceedsFromNotesReceivable>
    <tact:PaymentsForProceedsFromNotesReceivable
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_83eabc391ea14afabf9df1460ec7a5c3"
      unitRef="U001">600000</tact:PaymentsForProceedsFromNotesReceivable>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_09539b8b35f24da7a009753ac440f5cc"
      unitRef="U001">222000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_21703cbce02e4270a298ae730cd07175"
      unitRef="U001">-1344000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_ee65e2577be24ce59d50ab44ecd288fb"
      unitRef="U001">0</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_90965fe1e13e49c585856d298c274a55"
      unitRef="U001">2756000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_fa8ef5a736c94f8c9f940653df3340b7"
      unitRef="U001">0</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_46fe8086331444b887b00e1bfc667845"
      unitRef="U001">2756000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_3012d43f30854492aac0d687495326ea"
      unitRef="U001">0</us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_55f7c21567674700a35dd43241000bba"
      unitRef="U001">2173000</us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_21344f1d431441d092388e95047ec658"
      unitRef="U001">436000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_22729fd7bac84b99aee72596b65a2dae"
      unitRef="U001">375000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_86d1658532d04c8f970979da7f9bff3e"
      unitRef="U001">12214000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_77d3220bd87f45ea8d8b7c19ea8fe0bf"
      unitRef="U001">9798000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_76555fb8c277417a94337e00b53d8921"
      unitRef="U001">1014000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_817007efa51141a4a9baa6b848004bb5"
      unitRef="U001">1061000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_61adcb7413f8412988d1a2807eb68544"
      unitRef="U001">-133000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_1f9159670b7d43bdadf6fb0581321933"
      unitRef="U001">-41000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationFinancingActivities>
    <us-gaap:PaymentsOfLoanCosts
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_eba35471c6a84211bfe71a21fadff4f9"
      unitRef="U001">31000</us-gaap:PaymentsOfLoanCosts>
    <us-gaap:PaymentsOfLoanCosts
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_e697369e668b467e9f5cb326ebfb50d2"
      unitRef="U001">213000</us-gaap:PaymentsOfLoanCosts>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_0ba7a43d77764ea48c1496ec91bf013a"
      unitRef="U001">11472000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_36e2cbf5b59a45cb8d3f81af925a987e"
      unitRef="U001">11031000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_57ec8182f44c435e85ef169adf390a4d"
      unitRef="U001">-86000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_ace501a1b098466ab17f9d21b694c350"
      unitRef="U001">-21000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_864711d962a646c6943783bf89907460"
      unitRef="U001">9098000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_df7f426545aa45218ed08b386433b35f"
      unitRef="U001">6156000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20201231"
      decimals="-3"
      id="Fact_bdcfa5506a35453d832a5c1def28007d"
      unitRef="U001">10359000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20191231"
      decimals="-3"
      id="Fact_e1dbb260557a4782ab04cc6514791d92"
      unitRef="U001">4203000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4ceb84b4729a4b2abe46a7771bc46e6a"
      unitRef="U001">19457000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20201231"
      decimals="-3"
      id="Fact_5d4cb3a60b2941f9b0e0fbd8ae3f1573"
      unitRef="U001">10359000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_9c20382559664f4b91545255b2fe3df7"
      unitRef="U001">76000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_d5d6175a964042cc8c10e3df324ad686"
      unitRef="U001">64000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaid
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_57de2c03096e4617bdd147d0b0d489a7"
      unitRef="U001">57000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_48ab0d8d08574b368a9a945d787856e2"
      unitRef="U001">46000</us-gaap:IncomeTaxesPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_00128abb69e34c32b9f4234def160872"
      unitRef="U001">82000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_763d100525414ed2bc68b6a12b7ea93a"
      unitRef="U001">25000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:NatureOfOperations
      contextRef="c20210101to20211231"
      id="Text_e73c7be2a9db4e1d84cb9e6ea16c2906">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;1. Description of business&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Technologies Incorporated (together with its subsidiaries, &#x201c;TransAct,&#x201d; the &#x201c;Company,&#x201d; &#x201c;we,&#x201d; &#x201c;us,&#x201d; or &#x201c;our&#x201d;), which has its
    headquarters in Hamden, Connecticut and its primary operating facility in Ithaca, New York, operates in one operating segment: software-driven
    technology and printing solutions for high growth markets including food service technology, casino and gaming and POS automation markets.&#160; Our solutions are designed from the ground up based on market and customer requirements and are sold under the
    BOHA!&lt;sup&gt;TM&lt;/sup&gt;, AccuDate&#x2122;, Epic, Ithaca&#xae;, EPICENTRAL and Printrex&#xae; product brands.&#160; We sell our products to original equipment manufacturers, value-added resellers, select distributors, and 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. TransAct also provides world-class service, spare parts, accessories and printing supplies to its growing worldwide
    installed base of products.&#160; We also generate revenue from the after-market side of the business, providing printer and terminal service, consumables and spare parts in addition to revenue from our two software solutions; (i) our line of BOHA! software applications used to automate the back-of-house operations of restaurants, convenience stores and food service operators and (ii) the
    EPICENTRAL Print System (&#x201c;EPICENTRAL&#x201d;), that enables casino operators to create promotional coupons and marketing messages and print them in real time at the slot machine.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 11.4pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Impact of the COVID-19 Pandemic&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;In the first quarter of 2020, the COVID-19 pandemic and the resulting social distancing measures, including closures and restricted
    openings of restaurants and casinos implemented by federal, state and local authorities, negatively impacted customer demand and disrupted portions of our supply chain, including delayed product shipments from our two manufacturers located in Thailand and China.&#160; While we began to experience a modest recovery starting in the second half of 2020 into 2021 and expect this recovery to continue
    during 2022, the exact timing and pace of recovery are unknown given uncertainty surrounding responsive measures to the spread of virus variants or any potential future resurgences of the virus and the significant disruption that our customers have
    already experienced and may continue to experience.&#160; In light of this uncertainty, we implemented a number of cost saving measures during 2020 to help mitigate the impact on our financial position and operations and continued to limit discretionary
    spending during 2021.&#160; We are monitoring indicators of demand recovery, including our sales pipeline, customer orders and product shipments to ascertain an estimate of the ultimate impact of the COVID-19 pandemic on our business; however, the length
    and ultimate severity of the reduction in demand due to the pandemic remains uncertain.&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 11.4pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;Balance Sheet, Cash Flow and Liquidity.
    &lt;/span&gt;In addition to the expense management actions implemented during 2020, we took the following actions to increase liquidity and strengthen our financial position.&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"/&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; 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', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Public Offering &#x2013; On October 16, 2020 and August 16, 2021, the Company raised net proceeds of
              $&lt;/span&gt;8.7&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million and $&lt;/span&gt;11.2&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million (&lt;/span&gt;including the exercise of the underwriters
            overallotment options on October 16, 2020 and August 20, 2021)&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;, respectively, after deducting underwriting discounts, commissions and offering expenses, through
              underwritten public offerings and sold an aggregate of &lt;/span&gt;1,380,000&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; and &lt;/span&gt;842,375&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; shares of common
              stock, respectively.&lt;/span&gt;&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"/&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; 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', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;PPP Loan &#x2013; On May 1, 2020, the Company was granted a $&lt;/span&gt;2.2&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million loan (the &#x201c;PPP Loan&#x201d;) under the Paycheck Protection Program
              (the &#x201c;PPP&#x201d;) administered by the Small Business Administration (&#x201c;SBA&#x201d;) established under Division A, Title I of the Coronavirus Aid, Relief, and Economic Security (&#x201c;CARES&#x201d;) Act, which enabled us to return employees we furloughed earlier in
              2020 to full time employment and to restore &lt;/span&gt;employees to full pay following certain pay cuts&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;.&#160; &lt;/span&gt;On July 8, 2021, we received notice that the PPP Loan
            had been forgiven as of July 1, 2021.&#160; See Note 9 for further details regarding the PPP Loan.&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"/&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; 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', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Employee Retention Credit &#x2013; &lt;/span&gt;Under the provisions of the CARES Act, the Company is
            eligible for a refundable employee retention credit subject to certain criteria.&#160;&#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 Sheets as of December 31, 2021.&#160; We expect to receive these funds during 2022.&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"/&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; 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', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;New Credit Facility &#x2013; On March 13, 2020, we entered into a new credit facility with Siena
              Lending Group LLC that provides a revolving credit line of up to $&lt;/span&gt;10.0&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million, subject to a borrowing base.&lt;/span&gt;&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt;"/&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; 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', Times, serif; font-size: 10pt;"&gt;Reduced Capital Expenditures &#x2013; We limited capital expenditures during 2020 and gradually increased expenses during 2021 as our sales improved.&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We may further modify or supplement the expense management measures we have implemented and the actions we have taken to increase
    liquidity as the timing and extent of customer demand recovery develops and supply chains normalize.&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 Consolidated Financial Statements included in this Form 10-K (this &#x201c;Report&#x201d;) were issued, including consideration of the actions taken 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 Consolidated Financial Statements were issued.&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 11.4pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Use of Assumptions and Estimates&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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
    Consolidated Financial Statements were issued is based on assumptions which involve significant judgment and estimates of future revenues, capital expenditures and other operating costs. Our current assumptions are that casinos and restaurants remain
    open and consumer traffic continues to gradually increase during 2022, but that many casinos and restaurants may delay purchases of new slot machines and our BOHA! products, respectively, due to labor shortages and supply issues caused by the
    pandemic.&#160; Based on these assumptions, we anticipate that sales in casino and gaming and food service technology may continue to be negatively impacted for the foreseeable future.&#160; We have performed a sensitivity analysis on these assumptions to
    forecast the potential impact of a slower-than-anticipated recovery and believe that we are positioned to withstand the impact of lower-than-anticipated sales and that we will be able to take additional financial and operational actions to cut costs
    and/or increase liquidity if necessary. These actions may include additional expense reductions and capital raising activities.&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;In addition, the presentation of the accompanying audited Consolidated 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, inventory obsolescence, the valuation of deferred tax
    assets and liabilities, depreciable lives of equipment, warranty obligations, 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="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Smaller Reporting Company&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;As a smaller reporting company, as defined in Item 10(f)(1) of Regulation S-K, we may choose to prepare our disclosures relying on
    certain scaled disclosure requirements for smaller reporting companies in Regulation S-K and in Article 8 of Regulation S-X.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The scaled disclosure requirements for smaller reporting companies permit us (i) to include less extensive narrative disclosure than
    required of other reporting companies, particularly in the description of executive compensation and (ii) to provide audited financial statements for two fiscal years, in contrast to other reporting companies, which must provide audited financial
    statements for three years.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We may lose our status as a smaller reporting company on the last day of the fiscal year in which (i) our public float exceeds $250
    million as of the last day of the second fiscal quarter or (ii) if we have more than $100 million in annual revenues and (a) have no public float or (b) have a public float more than $700 million.&lt;/div&gt;
</us-gaap:NatureOfOperations>
    <us-gaap:NumberOfOperatingSegments
      contextRef="c20210101to20211231"
      decimals="INF"
      id="Fact_657092ad33464a9480ae98b813318733"
      unitRef="U004">1</us-gaap:NumberOfOperatingSegments>
    <tact:NumberOfSoftwareSolutions
      contextRef="c20211231"
      decimals="INF"
      id="Fact_304467109d7347d8a22d0ae3ebffef66"
      unitRef="U005">2</tact:NumberOfSoftwareSolutions>
    <tact:NumberOfManufacturers
      contextRef="c20211231"
      decimals="INF"
      id="Fact_fd2b4cc99d1b490d9c8369846fb0a10e"
      unitRef="U006">2</tact:NumberOfManufacturers>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="c20201016to20201016"
      decimals="-5"
      id="Fact_4c872818bc0344d8b41216fe5815b205"
      unitRef="U001">8700000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="c20210816to20210816"
      decimals="-5"
      id="Fact_b18eae0e4fc34adcb464fb979c64fc5b"
      unitRef="U001">11200000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="c20201016to20201016"
      decimals="0"
      id="Fact_14763882aac34f2ab7d009d7fdcfaf2d"
      unitRef="U002">1380000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="c20210816to20210816"
      decimals="0"
      id="Fact_d49348d3935243d0a96f5e9152cd70b4"
      unitRef="U002">842375</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="c20200501_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember"
      decimals="-5"
      id="Fact_ff0f257168b845a992a28dd3b6245ced"
      unitRef="U001">2200000</us-gaap:DebtInstrumentFaceAmount>
    <tact:GainFromEmployeeRetentionCredit
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_903e406eb1d743e8ac89e2d2f819f770"
      unitRef="U001">1500000</tact:GainFromEmployeeRetentionCredit>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_eba0349e625d42388acf7121b5ad4e6e"
      unitRef="U001">10000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="c20210101to20211231"
      id="Text_edf892add4d247548bdc5d9acfee7ecc">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;2. Summary of significant accounting policies&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Principles of
      consolidation: &lt;/span&gt;The accompanying Consolidated Financial Statements include the accounts of TransAct and its wholly-owned subsidiaries, which require consolidation, after the elimination of intercompany accounts, transactions and unrealized
    profit. &lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Use of estimates&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt; The preparation of Consolidated Financial Statements in conformity with accounting principles generally accepted in the United States of America
    (&#x201c;GAAP&#x201d;) requires management to make estimates and assumptions that affect the reported amounts of assets, liabilities, revenue and expenses, and disclosure of contingent assets and liabilities as of the date of the Consolidated Financial Statements
    and the reported amounts of sales and expenses during the reporting period. Actual results could differ from those estimates.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Segment reporting&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;: &lt;/span&gt;We apply the provisions of the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) Accounting Standards Codification (&#x201c;ASC&#x201d;) 280, &#x201c;Segment Reporting.&#x201d;&#160; We
    view our operations and manage our business as one segment: the design, development and marketing of software-driven technology and printing
    solutions and providing printer and terminal related software, services, supplies and spare parts.&#160; Factors used to identify TransAct&#x2019;s single operating segment include the organizational structure of the Company and the financial information available
    for evaluation by the chief operating decision-maker in making decisions about how to allocate resources and assess performance.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt; We consider all highly liquid investments with a maturity date of three months or less at date of purchase to be cash equivalents.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Allowance for
      doubtful accounts&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt; We establish an allowance for doubtful accounts to ensure trade receivables are valued appropriately.&#160; We maintain an
    allowance for doubtful accounts based on a variety of factors, including the length of time receivables are past due, significant one-time events and historical experience.&#160; We record a specific allowance for individual accounts when we become aware of
    a customer&#x2019;s inability to meet its financial obligations, such as in the case of bankruptcy filings or deterioration in the customer&#x2019;s operating results or financial position.&#160; If circumstances related to customers change, we further adjust estimates
    of the recoverability of receivables.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table summarizes the activity recorded in the valuation account for accounts receivable:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;220&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;221&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Additions charged to costs and expenses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deductions&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;219&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;220&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Inventories:&lt;/span&gt; Inventories are
    stated at the lower of cost (principally standard cost, which approximates actual cost on a first-in, first-out basis) or net realizable value.&#160; We review net realizable value based on estimated selling prices in the ordinary course of business less
    estimated costs of completions, disposal and transportation, historical usage and estimates of future demand.&#160; Based on these reviews, inventory write-downs are recorded, as necessary, to reflect estimated obsolescence, excess quantities and net
    realizable value.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Fixed assets:&lt;/span&gt; Fixed assets are
    stated at cost.&#160; Depreciation is recorded using the straight-line method over the estimated useful lives.&#160; The estimated useful life of tooling is five years;
    machinery and equipment is ten years; furniture and office equipment is five years to ten years; and computer software and equipment is three years to seven years.&#160; Leasehold
    improvements are amortized over the shorter of the term of the lease or the useful life of the asset.&#160; Costs related to repairs and maintenance are expensed as incurred.&#160; The costs of sold or retired assets are removed from the related asset and
    accumulated depreciation accounts and any gain or loss is recognized.&#160; Depreciation expense was $0.7 million and $1.0 million in 2021 and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Leases:&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; We account for leases in accordance with ASC 842, &#x201c;Leases&#x201d; (&#x201c;ASC 842&#x201d;), which &lt;/span&gt;requires lessees to apply a dual approach, classifying leases as either finance or operating leases based on
    the principle of whether or not the lease is effectively a financed purchase by the lessee. This classification determines whether lease expense is recognized based on an effective interest method for finance leases or on a straight-line basis over the
    term of the lease for operating leases. A lessee is also required to record a right-of-use asset and a lease liability for all leases with a term of greater than 12 months regardless of their classification.&#160; Leases with a term of 12 months or less are
    accounted for based on existing guidance for operating leases.&#160; If risks and rewards are conveyed without the transfer of control, the lease is treated as financing. If the lessor does not convey risks and rewards or control, the lease is treated as
    operating.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We have elected certain practical expedients available under ASC 842 upon adoption. We have applied the practical expedient for
    short-term leases. We have lease agreements that include lease and non-lease components, and we have not elected the practical expedients to combine these components for any of our leases.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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. We determine if an arrangement contains a lease at inception. Our leases are included in &#x201c;Right-of-use asset&#x201d; and &#x201c;Lease liability&#x201d; in our Consolidated Balance Sheets.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Right of use assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to
    make lease payments arising from the lease. Lease right of use assets and liabilities are recognized at the commencement date of the lease based on the present value of lease payments over the lease term. On February 28, 2020, we entered into an
    amendment to extend the lease on our facility in Ithaca, New York, which resulted in recording an additional right-of-use-asset and lease liability of $1.5
    million.&#160; The lease, which was last amended on January 14, 2016, was scheduled to expire on May 31, 2021.&#160; The lease amendment provides for an extension of the lease for &lt;span style="-sec-ix-hidden:Fact_0a53edda34ca481aa7934ea4ab7d186a"&gt;four&lt;/span&gt; additional years from June 1, 2021 to May 31, 2025.&#160; On April 30, 2021, we entered into an amendment to modify the expiration date of our lease on our Hamden, CT facility.&#160; The lease, which
    was last amended on January 3, 2017, was scheduled to expire on April 30, 2027.&#160; The lease amendment modified the expiration date to October 31, 2025.&#160; The modification resulted in reducing the right-of-use-asset and lease liability by $0.3 million.&#160; Lease expense is recognized on a straight-line basis over the lease term.&#160; As most of our leases do not provide an implicit rate, the
    Company determines its incremental borrowing rate by using the rate of interest that the Company would have to pay to borrow on a collateralized basis over a similar term, an amount equal to the lease payments in a similar economic environment.&#160; Our
    lease right of use asset excludes lease incentives. Our leases have remaining lease terms of one year to five years, some of which include options to extend.&#160; The exercise of lease renewal options is at our sole discretion and our lease right of use assets and liabilities reflect only
    the options we are reasonably certain that we will exercise. Lease expense is recognized on a straight-line basis over the lease term.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Goodwill and
      Intangible assets&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; We acquire businesses in purchase
      transactions that result in the recognition of goodwill and intangible assets. The determination of the value of intangible assets requires management to make estimates and assumptions. In accordance with ASC 350-20 &#x201c;Goodwill,&#x201d; acquired goodwill is
      not amortized but is subject to impairment testing at least annually and when an event occurs or circumstances change that indicate it is more likely than not an impairment exists.&#160; &lt;/span&gt;We perform a fair value-based impairment test to the
    carrying value of goodwill and indefinite-lived intangible assets on an annual basis (as of December 31) and, if certain events or circumstances indicate that an impairment loss may have been incurred, on an interim basis.&#160; The Company utilizes the
    option to first assess qualitative factors to determine whether it is necessary to perform the Step 1 quantitative goodwill impairment test in accordance with the applicable accounting standards. Under the qualitative assessment, management considers
    relevant events and circumstances including but not limited to macroeconomic conditions, industry and market considerations, Company performance and events directly affecting the Company. If the Company determines that the Step 1 quantitative
    impairment test is required, management estimates the fair value of the reporting unit primarily using the income approach, which reflects management&#x2019;s cash flow projections, and also evaluates the fair value using the market approach. &lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Factors considered that may trigger an interim period impairment review of either acquired goodwill or intangible assets are: significant underperformance relative to expected
      historical or projected future operating results; significant changes in the manner of use of acquired assets or the strategy for the overall business; significant negative industry or economic trends; and significant decline in market capitalization
      relative to net book value. Finite lived intangible assets are amortized and are tested for impairment when appropriate.&lt;/span&gt;&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;As of December 31, 2021, we have determined that no goodwill or intangible asset impairment has occurred and the fair value of goodwill was substantially higher than our carrying value based on our assessment as of December 31, 2021 when our annual review for impairment was performed.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; margin-bottom: 8pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Revenue
      recognition:&lt;/span&gt; We account for revenue in accordance with ASC Topic 606: Revenue from Contracts with Customers.&#160; In accordance with ASC 606, a performance obligation is a promise in a contract with a customer to transfer a distinct good or
    service to the customer. Some of our contracts with customers contain a single performance obligation, while other contracts contain multiple performance obligations (most commonly when contracts include a hardware product, software and extended
    warranties).&#160; A contract&#x2019;s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied.&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The transaction price is determined based on the consideration to which the Company will be entitled in exchange for transferring
    services to the customer.&#160; To the extent the transaction price includes variable consideration, such as price protection, reserves for returns and other allowances, the Company estimates the amount of variable consideration that should be included in
    the transaction price utilizing either the &#x201c;expected value&#x201d; method or the &#x201c;most likely amount&#x201d; method depending on the nature of the variable consideration.&#160; Variable consideration is included in the transaction price if, in the Company&#x2019;s judgment, it
    is probable that a significant future reversal of cumulative revenue under the contract will not occur.&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;For a majority of our revenue, which consists of printers, terminals, consumables, and replacement parts, the Company recognizes
    revenue as of a point of time.&#160; The transaction price is recognized upon shipment of the order when control of the goods is transferred to the customer and at the time the performance obligation is fulfilled.&#160; We also sell a software solution in our
    casino and gaming market, EPICENTRAL, that enables casino operators to create promotional coupons and marketing messages and to print them in real time at the slot machine.&#160; EPICENTRAL is primarily comprised of both a software component, which is
    licensed to the customer, and a hardware component.&#160; EPICENTRAL software and hardware are integrated to deliver the system&#x2019;s full functionality.&#160; The transaction prices from EPICENTRAL software license and hardware are recognized upon installation and
    formal acceptance by the customer when control of the license is transferred to the customer.&#160; For out-of-warranty repairs, the transaction price is recognized after the repair work is completed and the printer or terminal is returned to the customer,
    as control of the product is transferred to the customer and our performance obligation is completed.&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Performance obligations are satisfied over time if the customer receives the benefits as we perform work, if the customer controls the
    asset as it is being produced, or if the product being produced for the customer has no alternative use and we have a contractual right to payment.&#160; For our separately priced extended warranty, BOHA! cloud-based software applications, technical support
    for our food service technology terminals and maintenance agreements (including free one-year maintenance received by customers upon completion
    of EPICENTRAL installation) revenue is recognized over time as the customer receives the benefit.&#160; The transaction price from the maintenance services is recognized ratably over time, using output methods, as control of the services is transferred to
    the customer.&#160; Our cloud-based BOHA! software allows customers to use hosted software over the contract period on a subscription basis without taking possession of the software and the subscription price is recognized ratably over the contract period.&#160;
    For extended warranties, the transaction price is recognized ratably over the warranty period, using output methods, as control of the services is transferred to the customer.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;When there is more than one performance obligation in a customer arrangement, the Company typically uses the &#x201c;standalone selling price&#x201d;
    method to determine the transaction price to allocate to each performance obligation. The Company sells the performance obligations separately and has established standalone selling prices for its products and services. In the case of an overall price
    discount, the discount is applied to each performance obligation proportionately based on standalone selling price. To determine the standalone selling price for initial EPICENTRAL installations, the Company uses the adjusted market assessment
    approach.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;For contracts with terms of less than 12 months, the Company expenses sales commissions as they are incurred, since the expected
    amortization period of the cost to obtain a contract is less than 12 months.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Disaggregation of revenue&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table disaggregates our revenue by market type, as we believe it 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 style="line-height: 11.05pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31, 2021&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Food service technology&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,738&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;887&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,625&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;POS automation&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,817&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,825&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Casino and gaming&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,173&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,129&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15,302&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Printrex&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;171&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;460&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;631&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: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Services Group&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,501&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;502&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,003&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 16.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net sales&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;32,400&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,986&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;39,386&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;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 12.3pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31, 2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Food service technology&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,956&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;778&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,734&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;POS automation&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,763&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,770&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Casino and gaming&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,852&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,127&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,979&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Lottery&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;817&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;817&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Printrex&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;83&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;217&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;300&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: 64%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Services Group&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,262&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;733&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,995&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: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 16.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net sales&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;24,733&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,862&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;30,595&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;

&lt;div style="text-align: left; line-height: 14.75pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Contract balances&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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. 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&#x201d; and &#x201c;Other Non-Current Assets&#x201d; on the Consolidated Balance Sheets.&#160; We first recorded contract assets during 2020 upon the start of a long-term BOHA! contract.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Contract liabilities consist of customer prepayments and deferred revenue.&#160; Customer prepayments are reported as &#x201c;Accrued Liabilities&#x201d;
    in current liabilities in the Consolidated Balance Sheets and represent customer payments made in advance of performance obligations in instances where credit has not been extended and is 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; The increase in current and non-current deferred revenue in 2021 compared to 2020 was primarily due to
    increased BOHA! software subscriptions and increased extended warranty contracts on our BOHA! hardware products.&#160; During the year ended December 31, 2021,
    we recognized revenue of $0.7 million related to our contract liabilities as of December 31, 2020. &lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net contract (liabilities) assets consist of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;314&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;290&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Unbilled receivables, non-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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;308&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;591&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(99&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(216&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(805&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(504&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred revenue, non-current&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(186&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(111&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net contract (liabilities) assets&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(468&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;50&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: justify; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Remaining performance obligations&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 December 31, 2021, the aggregate amount of the transaction price allocated to remaining performance obligations was $10.5 million.&#160; The Company expects to recognize revenue on $10.1
    million of our remaining performance obligations within the next 12 months and $0.4 million within the next &lt;span style="-sec-ix-hidden:Fact_0fb767fdbb19460d8f1b18e429c9fbeb"&gt;24&lt;/span&gt; months.&lt;/div&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Concentration of credit
      risk:&lt;/span&gt;&#160; Financial instruments that potentially expose us to concentrations of credit risk are limited to cash and cash equivalents held by our banks in excess of insured limits and accounts receivable.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accounts receivable from customers representing 10% or more of total accounts receivable were as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Chain Link Services&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International Gaming Technology (&#x201c;IGT&#x201d;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;NCR Corporation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Sales to customers representing 10% or more of total net sales were as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;IGT&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Warranty:&lt;/span&gt; We generally warrant our
    products for up to 24 months and record the estimated cost of such product warranties at the time the sale is recorded.&#160; Estimated warranty
    costs are based upon actual past experience of product repairs and the related estimated cost of labor and material to make the necessary repairs.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table summarizes the activity recorded in the accrued product warranty liability:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;140&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;215&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranties issued&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;44&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;56&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty settlements&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(83&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(131&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;101&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;140&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$79 thousand and $112 thousand of the accrued product warranty liability was classified as current in Accrued liabilities at December 31, 2021 and 2020, respectively.&#160; The remaining
    $22 thousand and $28 thousand of the
    accrued product warranty liability as of December 31, 2021 and 2020, respectively, was classified as long-term in Other liabilities.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Engineering,



      design and product development:&lt;/span&gt; Engineering, design and product development expenses include expenses incurred in connection with specialized engineering and design to introduce new products and to customize existing products, and are expensed
    as a component of operating expenses as incurred.&#160; We recorded $7.5 million and $5.7 million of research and development expenses in 2021 and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Costs incurred in the engineering, design and product development of a computer software product are charged to expense until
    technological feasibility has been established, at which point all material software costs are capitalized within Intangible assets in our Consolidated Balance Sheet until the product is available for general release to customers.&#160; While judgment is
    required in determining when technological feasibility of a product is established, we have determined that it is reached after all high-risk development issues have been documented in a formal detailed plan design.&#160; The amortization of these costs
    have been included in cost of sales over the estimated life of the product.&#160; During 2019, we contracted several third-parties to develop software for our food service technology products, the cost for which we capitalized.&#160; Unamortized development
    costs for such software were $396 thousand as of December 31, 2021.&#160; The total amount charged to cost of sales for capitalized software development costs was $154
    thousand and $153 thousand in 2021
    and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Advertising:&lt;/span&gt; Advertising costs are
    expensed as incurred.&#160; Advertising expenses, which are included in selling and marketing expense on the accompanying Consolidated Statements of Operations, for 2021 and 2020 totaled $1.8 million and $0.7 million, respectively. These expenses include items such as
    consulting and professional services, tradeshows, and print advertising.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Income taxes:&lt;/span&gt; The income tax
    amounts reflected in the accompanying Consolidated Financial Statements are accounted for under the liability method in accordance with ASC 740, &#x201c;Income Taxes&#x201d; (&#x201c;ASC 740&#x201d;).&#160; Deferred tax assets and liabilities are recognized for the estimated future
    tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards.&#160; Deferred tax assets and liabilities are
    measured using enacted tax rates in effect for the year in which those temporary differences are expected to be recovered or settled.&#160; We assess the likelihood that net deferred tax assets will be realized from future taxable income, and to the extent
    that we believe that realization is not likely, we establish a valuation allowance.&#160; In accordance with ASC 740, we identified, evaluated and measured the amount of benefits to be recognized for our tax return positions. &lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Foreign currency
      translation:&lt;/span&gt; The financial position and results of operations of our foreign subsidiary in the UK are measured using local currency as the functional currency.&#160; Assets and liabilities of such subsidiary have been translated into U.S. dollars
    at the year-end exchange rate, related sales and expenses have been translated at the exchange rate as of the date the transaction was recognized, and shareholders&#x2019; equity has been translated at historical exchange rates.&#160; The resulting translation
    gains or losses, net of tax, are recorded in shareholders&#x2019; equity as a cumulative translation adjustment, which is a component of accumulated other comprehensive income and loss.&#160; Foreign currency transaction gains and losses, including those related
    to intercompany balances, are recognized in Other, net on the Consolidated Statements of Operations.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Share-based payments:&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;&#160;&lt;/span&gt;At December 31, 2021, we have share-based
    employee compensation plans, which are described more fully in Note 10 - Stock incentive plans.&#160; We account for those plans under the recognition and measurement principles of ASC 718, &#x201c;Compensation &#x2013; Stock Compensation.&#x201d;&#160; Share-based compensation
    expense is measured at the grant date, based on the estimated fair value of the award, and is recognized as expense over the employee&#x2019;s requisite service period.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We use the Black-Scholes option-pricing model to calculate the fair value of share-based awards.&#160; The key assumptions for this
    valuation method include the expected term of the option, stock price volatility, risk-free interest rate, dividend yield, market price of our underlying stock and exercise price.&#160; Many of these assumptions require judgment and are highly sensitive in
    the determination of compensation expense.&#160; Forfeitures are recognized as they occur.&lt;/div&gt;

&lt;div style="line-height: 11.05pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Net loss per
      share:&lt;/span&gt; We report net income or loss per share in accordance with ASC 260, &#x201c;Earnings per Share (EPS).&#x201d; Under this guidance, basic EPS, which excludes dilution, is computed by dividing income or loss available to common shareholders by the
    weighted average number of common shares outstanding for the period.&#160; Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock.&#160; Diluted EPS
    includes in-the-money stock options using the treasury stock method.&#160; During a loss period, the assumed exercise of in-the-money stock options has an anti-dilutive effect, and therefore, these instruments are excluded from the computation of diluted
    EPS.&#160; See Note 12 - Earnings per share.&lt;/div&gt;
</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_a05ed4af955d48f9a8e48d290aa3a0e8">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Principles of
      consolidation: &lt;/span&gt;The accompanying Consolidated Financial Statements include the accounts of TransAct and its wholly-owned subsidiaries, which require consolidation, after the elimination of intercompany accounts, transactions and unrealized
    profit. &lt;/div&gt;
</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="c20210101to20211231"
      id="Text_b1b972a8872d4c509b46c4009efc9793">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Use of estimates&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt; The preparation of Consolidated Financial Statements in conformity with accounting principles generally accepted in the United States of America
    (&#x201c;GAAP&#x201d;) requires management to make estimates and assumptions that affect the reported amounts of assets, liabilities, revenue and expenses, and disclosure of contingent assets and liabilities as of the date of the Consolidated Financial Statements
    and the reported amounts of sales and expenses during the reporting period. Actual results could differ from those estimates.&lt;/div&gt;
</us-gaap:UseOfEstimates>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_04764b470eaa42c684770ef0114aa186">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Segment reporting&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;: &lt;/span&gt;We apply the provisions of the Financial Accounting Standards Board (&#x201c;FASB&#x201d;) Accounting Standards Codification (&#x201c;ASC&#x201d;) 280, &#x201c;Segment Reporting.&#x201d;&#160; We
    view our operations and manage our business as one segment: the design, development and marketing of software-driven technology and printing
    solutions and providing printer and terminal related software, services, supplies and spare parts.&#160; Factors used to identify TransAct&#x2019;s single operating segment include the organizational structure of the Company and the financial information available
    for evaluation by the chief operating decision-maker in making decisions about how to allocate resources and assess performance.&lt;/div&gt;
</us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="c20210101to20211231"
      decimals="INF"
      id="Fact_a646e39195854e3cb22aeb85d83e92c2"
      unitRef="U004">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_0e53aba468e44a79aa7368b3cac37178">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt; We consider all highly liquid investments with a maturity date of three months or less at date of purchase to be cash equivalents.&lt;/div&gt;
</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy
      contextRef="c20210101to20211231"
      id="Text_d375ffa594664df48699e7bb444d3aa8">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Allowance for
      doubtful accounts&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt; We establish an allowance for doubtful accounts to ensure trade receivables are valued appropriately.&#160; We maintain an
    allowance for doubtful accounts based on a variety of factors, including the length of time receivables are past due, significant one-time events and historical experience.&#160; We record a specific allowance for individual accounts when we become aware of
    a customer&#x2019;s inability to meet its financial obligations, such as in the case of bankruptcy filings or deterioration in the customer&#x2019;s operating results or financial position.&#160; If circumstances related to customers change, we further adjust estimates
    of the recoverability of receivables.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table summarizes the activity recorded in the valuation account for accounts receivable:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;220&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;221&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Additions charged to costs and expenses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deductions&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;219&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;220&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy>
    <us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_9d4323ec57024da98dadb1ad2d0eac8d">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table summarizes the activity recorded in the valuation account for accounts receivable:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;220&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;221&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Additions charged to costs and expenses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deductions&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;219&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;220&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfCreditLossesForFinancingReceivablesCurrentTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_54c7e0114c9f4e3c8e7f7fc5d359b84e"
      unitRef="U001">220000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20191231"
      decimals="-3"
      id="Fact_24550f41064f4699b2a6470eb28f87ca"
      unitRef="U001">221000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_79850dfc035b452d92bd32d37f6a015f"
      unitRef="U001">0</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_fbdb6c138e164eeba791fde79cec7242"
      unitRef="U001">1000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_ca60a0292ed24aac9eb3e69c0d11dffd"
      unitRef="U001">1000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_742a4a19d0fd4e06b6df6c974f738e87"
      unitRef="U001">2000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_d58463c1625f4ecda4dde637568c42e6"
      unitRef="U001">219000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_30cb65d6a5ed442d96492eeda380c219"
      unitRef="U001">220000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_cbf9ab1a6272485593a81172e5594a9f">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Inventories:&lt;/span&gt; Inventories are
    stated at the lower of cost (principally standard cost, which approximates actual cost on a first-in, first-out basis) or net realizable value.&#160; We review net realizable value based on estimated selling prices in the ordinary course of business less
    estimated costs of completions, disposal and transportation, historical usage and estimates of future demand.&#160; Based on these reviews, inventory write-downs are recorded, as necessary, to reflect estimated obsolescence, excess quantities and net
    realizable value.&lt;/div&gt;
</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_aa794ae16528441eb764ae2ec6921921">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Fixed assets:&lt;/span&gt; Fixed assets are
    stated at cost.&#160; Depreciation is recorded using the straight-line method over the estimated useful lives.&#160; The estimated useful life of tooling is five years;
    machinery and equipment is ten years; furniture and office equipment is five years to ten years; and computer software and equipment is three years to seven years.&#160; Leasehold
    improvements are amortized over the shorter of the term of the lease or the useful life of the asset.&#160; Costs related to repairs and maintenance are expensed as incurred.&#160; The costs of sold or retired assets are removed from the related asset and
    accumulated depreciation accounts and any gain or loss is recognized.&#160; Depreciation expense was $0.7 million and $1.0 million in 2021 and 2020, respectively.&lt;/div&gt;
</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_ToolsDiesAndMoldsMember"
      id="Fact_c55284f1f0b14297ba96b72f42df18f4">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"
      id="Fact_67bce9e49b1b4d1a81deb051c338f6c6">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MinimumMember"
      id="Fact_bdeebf1f667341de9916364f3e13afda">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember_RangeAxis_MaximumMember"
      id="Fact_a3e2bf03876e48b08531ffe5083ce955">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MinimumMember"
      id="Fact_c2156240a61b498494d63e3fb99a6dd9">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20210101to20211231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember_RangeAxis_MaximumMember"
      id="Fact_80115fe7917a4176a9d8ba88323953b8">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:Depreciation
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_508ee110d013442e8b1aacaba6884e97"
      unitRef="U001">700000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="c20200101to20201231"
      decimals="-5"
      id="Fact_411d12ae6f564b61856a47ed68aa518f"
      unitRef="U001">1000000.0</us-gaap:Depreciation>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_3b66bdb6653c45f5890204e3efcb6f7b">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Leases:&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; We account for leases in accordance with ASC 842, &#x201c;Leases&#x201d; (&#x201c;ASC 842&#x201d;), which &lt;/span&gt;requires lessees to apply a dual approach, classifying leases as either finance or operating leases based on
    the principle of whether or not the lease is effectively a financed purchase by the lessee. This classification determines whether lease expense is recognized based on an effective interest method for finance leases or on a straight-line basis over the
    term of the lease for operating leases. A lessee is also required to record a right-of-use asset and a lease liability for all leases with a term of greater than 12 months regardless of their classification.&#160; Leases with a term of 12 months or less are
    accounted for based on existing guidance for operating leases.&#160; If risks and rewards are conveyed without the transfer of control, the lease is treated as financing. If the lessor does not convey risks and rewards or control, the lease is treated as
    operating.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We have elected certain practical expedients available under ASC 842 upon adoption. We have applied the practical expedient for
    short-term leases. We have lease agreements that include lease and non-lease components, and we have not elected the practical expedients to combine these components for any of our leases.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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. We determine if an arrangement contains a lease at inception. Our leases are included in &#x201c;Right-of-use asset&#x201d; and &#x201c;Lease liability&#x201d; in our Consolidated Balance Sheets.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Right of use assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to
    make lease payments arising from the lease. Lease right of use assets and liabilities are recognized at the commencement date of the lease based on the present value of lease payments over the lease term. On February 28, 2020, we entered into an
    amendment to extend the lease on our facility in Ithaca, New York, which resulted in recording an additional right-of-use-asset and lease liability of $1.5
    million.&#160; The lease, which was last amended on January 14, 2016, was scheduled to expire on May 31, 2021.&#160; The lease amendment provides for an extension of the lease for &lt;span style="-sec-ix-hidden:Fact_0a53edda34ca481aa7934ea4ab7d186a"&gt;four&lt;/span&gt; additional years from June 1, 2021 to May 31, 2025.&#160; On April 30, 2021, we entered into an amendment to modify the expiration date of our lease on our Hamden, CT facility.&#160; The lease, which
    was last amended on January 3, 2017, was scheduled to expire on April 30, 2027.&#160; The lease amendment modified the expiration date to October 31, 2025.&#160; The modification resulted in reducing the right-of-use-asset and lease liability by $0.3 million.&#160; Lease expense is recognized on a straight-line basis over the lease term.&#160; As most of our leases do not provide an implicit rate, the
    Company determines its incremental borrowing rate by using the rate of interest that the Company would have to pay to borrow on a collateralized basis over a similar term, an amount equal to the lease payments in a similar economic environment.&#160; Our
    lease right of use asset excludes lease incentives. Our leases have remaining lease terms of one year to five years, some of which include options to extend.&#160; The exercise of lease renewal options is at our sole discretion and our lease right of use assets and liabilities reflect only
    the options we are reasonably certain that we will exercise. Lease expense is recognized on a straight-line basis over the lease term.&lt;/div&gt;
</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="c20200228to20200228_PropertyPlantAndEquipmentByTypeAxis_BuildingMember"
      decimals="-5"
      id="Fact_49bdaef897564157a284c3b9f58d86a6"
      unitRef="U001">1500000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <tact:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="c20200228to20200228_PropertyPlantAndEquipmentByTypeAxis_BuildingMember"
      decimals="-5"
      id="Fact_2c81c920ef124a8ba0f2fcf6b9b1663b"
      unitRef="U001">1500000</tact:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="c20210420to20210420_PropertyPlantAndEquipmentByTypeAxis_FacilityInHamdenConnecticutMember"
      decimals="-5"
      id="Fact_9e5ca2725025413dbc30fb8c2ed64c91"
      unitRef="U001">-300000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <tact:IncreaseDecreaseInOperatingLeaseRightOfUseAsset
      contextRef="c20210420to20210420_PropertyPlantAndEquipmentByTypeAxis_FacilityInHamdenConnecticutMember"
      decimals="-5"
      id="Fact_2e15e2dee19941d98715d361c9e2a66a"
      unitRef="U001">-300000</tact:IncreaseDecreaseInOperatingLeaseRightOfUseAsset>
    <us-gaap:LesseeOperatingLeaseRemainingLeaseTerm
      contextRef="c20211231_RangeAxis_MinimumMember"
      id="Fact_ff2d98cf833d46869c94d01a510e3055">P1Y</us-gaap:LesseeOperatingLeaseRemainingLeaseTerm>
    <us-gaap:LesseeOperatingLeaseRemainingLeaseTerm
      contextRef="c20211231_RangeAxis_MaximumMember"
      id="Fact_821078352b4e4b0f9e6ec5d60e1f2bce">P5Y</us-gaap:LesseeOperatingLeaseRemainingLeaseTerm>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_980b65c72a8b4e72b76eb381dcf66c9b">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Goodwill and
      Intangible assets&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;:&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; We acquire businesses in purchase
      transactions that result in the recognition of goodwill and intangible assets. The determination of the value of intangible assets requires management to make estimates and assumptions. In accordance with ASC 350-20 &#x201c;Goodwill,&#x201d; acquired goodwill is
      not amortized but is subject to impairment testing at least annually and when an event occurs or circumstances change that indicate it is more likely than not an impairment exists.&#160; &lt;/span&gt;We perform a fair value-based impairment test to the
    carrying value of goodwill and indefinite-lived intangible assets on an annual basis (as of December 31) and, if certain events or circumstances indicate that an impairment loss may have been incurred, on an interim basis.&#160; The Company utilizes the
    option to first assess qualitative factors to determine whether it is necessary to perform the Step 1 quantitative goodwill impairment test in accordance with the applicable accounting standards. Under the qualitative assessment, management considers
    relevant events and circumstances including but not limited to macroeconomic conditions, industry and market considerations, Company performance and events directly affecting the Company. If the Company determines that the Step 1 quantitative
    impairment test is required, management estimates the fair value of the reporting unit primarily using the income approach, which reflects management&#x2019;s cash flow projections, and also evaluates the fair value using the market approach. &lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Factors considered that may trigger an interim period impairment review of either acquired goodwill or intangible assets are: significant underperformance relative to expected
      historical or projected future operating results; significant changes in the manner of use of acquired assets or the strategy for the overall business; significant negative industry or economic trends; and significant decline in market capitalization
      relative to net book value. Finite lived intangible assets are amortized and are tested for impairment when appropriate.&lt;/span&gt;&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;As of December 31, 2021, we have determined that no goodwill or intangible asset impairment has occurred and the fair value of goodwill was substantially higher than our carrying value based on our assessment as of December 31, 2021 when our annual review for impairment was performed.&lt;/div&gt;
</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:GoodwillAndIntangibleAssetImpairment
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_ca1af0f842de46e8ba921bccaeffb2c9"
      unitRef="U001">0</us-gaap:GoodwillAndIntangibleAssetImpairment>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_a1a709585b10474292c74696e24e91d9">
&lt;div style="text-align: justify; line-height: 10.25pt; margin-bottom: 8pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Revenue
      recognition:&lt;/span&gt; We account for revenue in accordance with ASC Topic 606: Revenue from Contracts with Customers.&#160; In accordance with ASC 606, a performance obligation is a promise in a contract with a customer to transfer a distinct good or
    service to the customer. Some of our contracts with customers contain a single performance obligation, while other contracts contain multiple performance obligations (most commonly when contracts include a hardware product, software and extended
    warranties).&#160; A contract&#x2019;s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied.&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The transaction price is determined based on the consideration to which the Company will be entitled in exchange for transferring
    services to the customer.&#160; To the extent the transaction price includes variable consideration, such as price protection, reserves for returns and other allowances, the Company estimates the amount of variable consideration that should be included in
    the transaction price utilizing either the &#x201c;expected value&#x201d; method or the &#x201c;most likely amount&#x201d; method depending on the nature of the variable consideration.&#160; Variable consideration is included in the transaction price if, in the Company&#x2019;s judgment, it
    is probable that a significant future reversal of cumulative revenue under the contract will not occur.&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;For a majority of our revenue, which consists of printers, terminals, consumables, and replacement parts, the Company recognizes
    revenue as of a point of time.&#160; The transaction price is recognized upon shipment of the order when control of the goods is transferred to the customer and at the time the performance obligation is fulfilled.&#160; We also sell a software solution in our
    casino and gaming market, EPICENTRAL, that enables casino operators to create promotional coupons and marketing messages and to print them in real time at the slot machine.&#160; EPICENTRAL is primarily comprised of both a software component, which is
    licensed to the customer, and a hardware component.&#160; EPICENTRAL software and hardware are integrated to deliver the system&#x2019;s full functionality.&#160; The transaction prices from EPICENTRAL software license and hardware are recognized upon installation and
    formal acceptance by the customer when control of the license is transferred to the customer.&#160; For out-of-warranty repairs, the transaction price is recognized after the repair work is completed and the printer or terminal is returned to the customer,
    as control of the product is transferred to the customer and our performance obligation is completed.&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Performance obligations are satisfied over time if the customer receives the benefits as we perform work, if the customer controls the
    asset as it is being produced, or if the product being produced for the customer has no alternative use and we have a contractual right to payment.&#160; For our separately priced extended warranty, BOHA! cloud-based software applications, technical support
    for our food service technology terminals and maintenance agreements (including free one-year maintenance received by customers upon completion
    of EPICENTRAL installation) revenue is recognized over time as the customer receives the benefit.&#160; The transaction price from the maintenance services is recognized ratably over time, using output methods, as control of the services is transferred to
    the customer.&#160; Our cloud-based BOHA! software allows customers to use hosted software over the contract period on a subscription basis without taking possession of the software and the subscription price is recognized ratably over the contract period.&#160;
    For extended warranties, the transaction price is recognized ratably over the warranty period, using output methods, as control of the services is transferred to the customer.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;When there is more than one performance obligation in a customer arrangement, the Company typically uses the &#x201c;standalone selling price&#x201d;
    method to determine the transaction price to allocate to each performance obligation. The Company sells the performance obligations separately and has established standalone selling prices for its products and services. In the case of an overall price
    discount, the discount is applied to each performance obligation proportionately based on standalone selling price. To determine the standalone selling price for initial EPICENTRAL installations, the Company uses the adjusted market assessment
    approach.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;For contracts with terms of less than 12 months, the Company expenses sales commissions as they are incurred, since the expected
    amortization period of the cost to obtain a contract is less than 12 months.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Disaggregation of revenue&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table disaggregates our revenue by market type, as we believe it 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 style="line-height: 11.05pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31, 2021&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Food service technology&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,738&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;887&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,625&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;POS automation&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,817&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,825&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Casino and gaming&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,173&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,129&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15,302&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Printrex&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;171&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;460&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;631&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: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Services Group&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,501&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;502&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,003&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 16.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net sales&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;32,400&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,986&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;39,386&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;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 12.3pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31, 2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Food service technology&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,956&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;778&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,734&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;POS automation&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,763&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,770&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Casino and gaming&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,852&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,127&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,979&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Lottery&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;817&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;817&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Printrex&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;83&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;217&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;300&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: 64%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Services Group&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,262&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;733&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,995&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: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 16.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net sales&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;24,733&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,862&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;30,595&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;

&lt;div style="text-align: left; line-height: 14.75pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Contract balances&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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. 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&#x201d; and &#x201c;Other Non-Current Assets&#x201d; on the Consolidated Balance Sheets.&#160; We first recorded contract assets during 2020 upon the start of a long-term BOHA! contract.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Contract liabilities consist of customer prepayments and deferred revenue.&#160; Customer prepayments are reported as &#x201c;Accrued Liabilities&#x201d;
    in current liabilities in the Consolidated Balance Sheets and represent customer payments made in advance of performance obligations in instances where credit has not been extended and is 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; The increase in current and non-current deferred revenue in 2021 compared to 2020 was primarily due to
    increased BOHA! software subscriptions and increased extended warranty contracts on our BOHA! hardware products.&#160; During the year ended December 31, 2021,
    we recognized revenue of $0.7 million related to our contract liabilities as of December 31, 2020. &lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net contract (liabilities) assets consist of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;314&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;290&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Unbilled receivables, non-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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;308&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;591&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(99&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(216&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(805&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(504&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred revenue, non-current&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(186&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(111&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net contract (liabilities) assets&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(468&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;50&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: justify; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;Remaining performance obligations&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 December 31, 2021, the aggregate amount of the transaction price allocated to remaining performance obligations was $10.5 million.&#160; The Company expects to recognize revenue on $10.1
    million of our remaining performance obligations within the next 12 months and $0.4 million within the next &lt;span style="-sec-ix-hidden:Fact_0fb767fdbb19460d8f1b18e429c9fbeb"&gt;24&lt;/span&gt; months.&lt;/div&gt;
</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <tact:TermOfFreeMaintenanceUponCompletionOfSoftwareInstallation
      contextRef="c20210101to20211231"
      id="Fact_7cf1bb7ea0d44530badecc849eec372b">P1Y</tact:TermOfFreeMaintenanceUponCompletionOfSoftwareInstallation>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_6ec54f25df26416e9ccd831af7f9af1f">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table disaggregates our revenue by market type, as we believe it 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 style="line-height: 11.05pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31, 2021&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Food service technology&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,738&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;887&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;12,625&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;POS automation&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,817&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,825&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Casino and gaming&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,173&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,129&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15,302&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Printrex&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;171&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;460&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;631&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: 64%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Services Group&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,501&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;502&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,003&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 64%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 16.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net sales&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;32,400&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,986&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="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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;39,386&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;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 12.3pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="10" style="vertical-align: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31, 2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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: top; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Food service technology&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,956&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;778&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,734&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;POS automation&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,763&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,770&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Casino and gaming&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,852&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,127&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,979&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: 64%;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Lottery&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;817&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;817&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: 64%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Printrex&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;83&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;217&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;300&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: 64%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 7.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;TransAct Services Group&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,262&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;733&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,995&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: 64%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; margin-left: 16.2pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net sales&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;24,733&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,862&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;30,595&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:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_07b868794b34419db70fe34b34993634"
      unitRef="U001">11738000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_afe6b1d0560f425183609a2b7c115e29"
      unitRef="U001">887000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_FoodServiceTechnologyMember"
      decimals="-3"
      id="Fact_f7c750099e13481fa2f75b2f580a5f5d"
      unitRef="U001">12625000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_2b24c8d28f45491aaad4bc9d7ec19105"
      unitRef="U001">4817000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_6fb236f7b91a4216b26194368a8f5780"
      unitRef="U001">8000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_PosAutomationAndBankingMember"
      decimals="-3"
      id="Fact_042aa47cfb304b868c9fb32c03a7d201"
      unitRef="U001">4825000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_1ff4c6690fe743af87e22223076d3efa"
      unitRef="U001">10173000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_8cda49ec629f4335a1c010716dcc17ad"
      unitRef="U001">5129000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_CasinoAndGamingMember"
      decimals="-3"
      id="Fact_0b9d53f275c547699c6d186ef7a7f2c9"
      unitRef="U001">15302000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_ca5815d10b774812a5592e1b92491356"
      unitRef="U001">171000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_2138772f994e4a7ba7a04d46b87c9c6c"
      unitRef="U001">460000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_PrintrexMember"
      decimals="-3"
      id="Fact_e544e92162cd4149a92edb554f44a4f0"
      unitRef="U001">631000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_7657b5232e6e4cef8998af6952a59bcf"
      unitRef="U001">5501000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_0aff425dd99645e69d4c2b940580f4b9"
      unitRef="U001">502000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ProductOrServiceAxis_TransactServicesGroupMember"
      decimals="-3"
      id="Fact_a8589516877040928d9fd26a9aaef7d8"
      unitRef="U001">6003000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_9b58b4c959ef46a1b5151013bb03f665"
      unitRef="U001">32400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_d41c23a5b1bf4dcda720e7081423e466"
      unitRef="U001">6986000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_63d9822502bf40d3a9ae39b49dcbce48"
      unitRef="U001">39386000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_cceff49d9f5a45eba7cd56761a29addc"
      unitRef="U001">6956000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_FoodServiceTechnologyMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_037a1659ca174ace9519868322e35892"
      unitRef="U001">778000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_FoodServiceTechnologyMember"
      decimals="-3"
      id="Fact_63a4c28848354ffa88ec67fb9f9af3cf"
      unitRef="U001">7734000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_67f498b197c1442f8b9c7b259d3fc2e9"
      unitRef="U001">3763000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_PosAutomationAndBankingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_85e8b496938e4ea0b9eca6a9fa965742"
      unitRef="U001">7000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_PosAutomationAndBankingMember"
      decimals="-3"
      id="Fact_8440b11c51df49bebf8c01f67d0e5fc9"
      unitRef="U001">3770000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_3760a0f339ed4deab2632644aafd7ae8"
      unitRef="U001">6852000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_CasinoAndGamingMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_7bcdffbb8d5944eb8814824bfac10ba7"
      unitRef="U001">4127000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_CasinoAndGamingMember"
      decimals="-3"
      id="Fact_9b2dec1595c2450cbc41d68703bfa9bb"
      unitRef="U001">10979000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_LotteryMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_c46e481f3f7846e4b08540ec8e5b03f1"
      unitRef="U001">817000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_LotteryMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_1545512f4d4b4070b9ef7f59959fdfc9"
      unitRef="U001">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_LotteryMember"
      decimals="-3"
      id="Fact_05466945f0314a69a087a5889ee5fd18"
      unitRef="U001">817000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_16ca17f98e2343e6b618fd3108e0d8b7"
      unitRef="U001">83000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_PrintrexMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_a1441bdd0580441d985af02d2c13319f"
      unitRef="U001">217000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_PrintrexMember"
      decimals="-3"
      id="Fact_6def9484a163411eb02f616093f51f9b"
      unitRef="U001">300000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_d933114435784925ad59964ea1452590"
      unitRef="U001">6262000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_TransactServicesGroupMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_f067b5a268404acb8d659b624b83e3c6"
      unitRef="U001">733000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ProductOrServiceAxis_TransactServicesGroupMember"
      decimals="-3"
      id="Fact_e0719514d6d842d9aab69d84b11af690"
      unitRef="U001">6995000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_36031d90045e487bb9e43f58d5b83af0"
      unitRef="U001">24733000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_1536f78606f74c12b781b25727172b72"
      unitRef="U001">5862000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_30eeb0c10d6b4e3789fc0a2d16059592"
      unitRef="U001">30595000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <tact:ContractWithCustomerRevenueRecognized
      contextRef="c20200101to20201231"
      decimals="-5"
      id="Fact_17dd4f48661847daa54ed1b1d1472e5c"
      unitRef="U001">700000</tact:ContractWithCustomerRevenueRecognized>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_c78427c499434299aa07edda49ca7d60">
&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net contract (liabilities) assets consist of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#160;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;(In thousands)&lt;/span&gt;&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;314&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;290&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Unbilled receivables, non-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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;308&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;591&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(99&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(216&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(805&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(504&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred revenue, non-current&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(186&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(111&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net contract (liabilities) assets&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(468&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;50&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_abffa07e37264a4ca4bb0605571e4612"
      unitRef="U001">314000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_b958e33cb76a44ddb5a776d7dbd08a7a"
      unitRef="U001">290000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_324586d1cb9c4058b9fadad4473c3a42"
      unitRef="U001">308000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_0437da69a1fc4ea09dd4cf5a8590f933"
      unitRef="U001">591000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_b3a482dac3594708b44af11fbb398e4b"
      unitRef="U001">99000</tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent>
    <tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_ea042e47e2894043b31b5f755243c234"
      unitRef="U001">216000</tact:ContractWithCustomerLiabilityForCustomerPrepaymentsCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_5558177efb9f48feb224e507ee2463e2"
      unitRef="U001">805000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_7687993674894c8d9e23b230c6de0e00"
      unitRef="U001">504000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_9b6157f0af084cfa95fa143453ca88e6"
      unitRef="U001">186000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_cc07ac9d0f2b4c7582b7461dba4273af"
      unitRef="U001">111000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <tact:ContractWithCustomerAssetLiabilityNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_78e6eb911c574b45b031e1460141cd63"
      unitRef="U001">-468000</tact:ContractWithCustomerAssetLiabilityNet>
    <tact:ContractWithCustomerAssetLiabilityNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_01196d2eafeb48adaaded239f0f9c0c0"
      unitRef="U001">50000</tact:ContractWithCustomerAssetLiabilityNet>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20211231"
      decimals="-5"
      id="Fact_d486a8fef49b476190fd8746afbf5e37"
      unitRef="U001">10500000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20211231_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20220101Member"
      decimals="-5"
      id="Fact_1720bc18dfa447edbe450a412c6c7695"
      unitRef="U001">10100000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="c20211231_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20220101Member"
      id="Fact_e55cdacc9187468a9eb398fb8e3d240f">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="c20211231_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_20230101Member"
      decimals="-5"
      id="Fact_d45056dd3c274760a3606afb1d11d118"
      unitRef="U001">400000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="c20210101to20211231"
      id="Text_2b299792be934052a24c455928d01035">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Concentration of credit
      risk:&lt;/span&gt;&#160; Financial instruments that potentially expose us to concentrations of credit risk are limited to cash and cash equivalents held by our banks in excess of insured limits and accounts receivable.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accounts receivable from customers representing 10% or more of total accounts receivable were as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Chain Link Services&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International Gaming Technology (&#x201c;IGT&#x201d;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;NCR Corporation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Sales to customers representing 10% or more of total net sales were as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;IGT&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
      contextRef="c20210101to20211231"
      id="Text_89671cac314b4e19b53d7b979330c1ee">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accounts receivable from customers representing 10% or more of total accounts receivable were as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Chain Link Services&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International Gaming Technology (&#x201c;IGT&#x201d;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;NCR Corporation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Sales to customers representing 10% or more of total net sales were as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;IGT&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_ScientificGamesMember"
      decimals="2"
      id="Fact_091257d077ed4537a4466cd6ec2c23e3"
      unitRef="U007">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_ScientificGamesMember"
      decimals="0"
      id="Fact_ee6f188f7eb54fbe8d717e86c88449a5"
      unitRef="U007">0</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember"
      decimals="2"
      id="Fact_5c1271a91673421690675ee860646576"
      unitRef="U007">0.03</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember"
      decimals="2"
      id="Fact_aaccfcd5690f4f849ebb78e7d6729aa2"
      unitRef="U007">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_NcrCorporationMember"
      decimals="2"
      id="Fact_508bca339c0a478687ea07da03b85315"
      unitRef="U007">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_AccountsReceivableMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_NcrCorporationMember"
      decimals="2"
      id="Fact_f15bdcec3a74491e8f4b0c18484c5572"
      unitRef="U007">0.02</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember"
      decimals="2"
      id="Fact_d276ac642d2f47bab1e653fa8e770084"
      unitRef="U007">0.09</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_CustomerConcentrationRiskMember_MajorCustomersAxis_InternationalGameTechnologyPlcMember"
      decimals="2"
      id="Fact_923d63e0f8bd49618f2cf3427cd5cfe0"
      unitRef="U007">0.15</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="c20210101to20211231"
      id="Text_30f339925ac04ea786cf4420d70d779c">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Warranty:&lt;/span&gt; We generally warrant our
    products for up to 24 months and record the estimated cost of such product warranties at the time the sale is recorded.&#160; Estimated warranty
    costs are based upon actual past experience of product repairs and the related estimated cost of labor and material to make the necessary repairs.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table summarizes the activity recorded in the accrued product warranty liability:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;140&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;215&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranties issued&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;44&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;56&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty settlements&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(83&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(131&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;101&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;140&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$79 thousand and $112 thousand of the accrued product warranty liability was classified as current in Accrued liabilities at December 31, 2021 and 2020, respectively.&#160; The remaining
    $22 thousand and $28 thousand of the
    accrued product warranty liability as of December 31, 2021 and 2020, respectively, was classified as long-term in Other liabilities.&lt;/div&gt;
</us-gaap:StandardProductWarrantyPolicy>
    <tact:ExtendedProductWarrantyPeriod
      contextRef="c20210101to20211231_RangeAxis_MaximumMember"
      id="Fact_98683472eb3946a4868868a9a13d3bc1">P24M</tact:ExtendedProductWarrantyPeriod>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_18de49a619234504be88683b77fafefe">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following table summarizes the activity recorded in the accrued product warranty liability:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;140&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;215&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranties issued&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;44&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;56&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty settlements&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(83&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(131&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;101&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;140&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="c20201231"
      decimals="-3"
      id="Fact_a0204574209d4f1fbc61657c9f22b337"
      unitRef="U001">140000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="c20191231"
      decimals="-3"
      id="Fact_b43b2857869345cdbe2484aa264c03fe"
      unitRef="U001">215000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_e379d8d8fd3f47b987df4fa4e4366b87"
      unitRef="U001">44000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_a89bf7429ac64fd697da7c2d869d3dde"
      unitRef="U001">56000</us-gaap:ExtendedProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ExtendedProductWarrantyAccrualPayments
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_de3256aef1344b1d87ae5e75a166c072"
      unitRef="U001">83000</us-gaap:ExtendedProductWarrantyAccrualPayments>
    <us-gaap:ExtendedProductWarrantyAccrualPayments
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_98f7e692c7674c33ade35d416c005ead"
      unitRef="U001">131000</us-gaap:ExtendedProductWarrantyAccrualPayments>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="c20211231"
      decimals="-3"
      id="Fact_ec931a1c6ec4407f870e81250fd3a65c"
      unitRef="U001">101000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrual
      contextRef="c20201231"
      decimals="-3"
      id="Fact_b4c5c332358e4db8b5a700f0bd99e9bb"
      unitRef="U001">140000</us-gaap:ExtendedProductWarrantyAccrual>
    <us-gaap:ExtendedProductWarrantyAccrualCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_dd723a81d1c84004ba034c792de65bb0"
      unitRef="U001">79000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
    <us-gaap:ExtendedProductWarrantyAccrualCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_50cd97295d9143648bc7fc27bb7f1561"
      unitRef="U001">112000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
    <us-gaap:ExtendedProductWarrantyAccrualNoncurrent
      contextRef="c20211231_BalanceSheetLocationAxis_OtherLiabilitiesMember"
      decimals="-3"
      id="Fact_91393daeb58942e0b848b43746a8a875"
      unitRef="U001">22000</us-gaap:ExtendedProductWarrantyAccrualNoncurrent>
    <us-gaap:ExtendedProductWarrantyAccrualNoncurrent
      contextRef="c20201231_BalanceSheetLocationAxis_OtherLiabilitiesMember"
      decimals="-3"
      id="Fact_558a57554d7440988011f11adc5281d5"
      unitRef="U001">28000</us-gaap:ExtendedProductWarrantyAccrualNoncurrent>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="c20210101to20211231"
      id="Text_e4c89041ce964f63a3ab9bd4f1a00125">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Engineering,



      design and product development:&lt;/span&gt; Engineering, design and product development expenses include expenses incurred in connection with specialized engineering and design to introduce new products and to customize existing products, and are expensed
    as a component of operating expenses as incurred.&#160; We recorded $7.5 million and $5.7 million of research and development expenses in 2021 and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Costs incurred in the engineering, design and product development of a computer software product are charged to expense until
    technological feasibility has been established, at which point all material software costs are capitalized within Intangible assets in our Consolidated Balance Sheet until the product is available for general release to customers.&#160; While judgment is
    required in determining when technological feasibility of a product is established, we have determined that it is reached after all high-risk development issues have been documented in a formal detailed plan design.&#160; The amortization of these costs
    have been included in cost of sales over the estimated life of the product.&#160; During 2019, we contracted several third-parties to develop software for our food service technology products, the cost for which we capitalized.&#160; Unamortized development
    costs for such software were $396 thousand as of December 31, 2021.&#160; The total amount charged to cost of sales for capitalized software development costs was $154
    thousand and $153 thousand in 2021
    and 2020, respectively.&lt;/div&gt;
</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_b0089f421d7d48068b193e21a327ad64"
      unitRef="U001">7500000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="c20200101to20201231"
      decimals="-5"
      id="Fact_b74d7ceb05014a9d94c25a046f3af0ad"
      unitRef="U001">5700000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_1bba367dc5794577aa2515873faf6942"
      unitRef="U001">396000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_bb711623a9f742bf8a84ed0ef7102cbf"
      unitRef="U001">154000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_f2b1a652723a4a318f611f7f79d53148"
      unitRef="U001">153000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_640142caf0ca49c68703632c34f3c261">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Advertising:&lt;/span&gt; Advertising costs are
    expensed as incurred.&#160; Advertising expenses, which are included in selling and marketing expense on the accompanying Consolidated Statements of Operations, for 2021 and 2020 totaled $1.8 million and $0.7 million, respectively. These expenses include items such as
    consulting and professional services, tradeshows, and print advertising.&lt;/div&gt;
</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_8fad1200199648688c449cc023bbc32e"
      unitRef="U001">1800000</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="c20200101to20201231"
      decimals="-5"
      id="Fact_92361189e6de43ea9cc02e3583077d6e"
      unitRef="U001">700000</us-gaap:AdvertisingExpense>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_fec5bc44f8b047c49ba621837b28bd1b">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Income taxes:&lt;/span&gt; The income tax
    amounts reflected in the accompanying Consolidated Financial Statements are accounted for under the liability method in accordance with ASC 740, &#x201c;Income Taxes&#x201d; (&#x201c;ASC 740&#x201d;).&#160; Deferred tax assets and liabilities are recognized for the estimated future
    tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases and operating loss and tax credit carryforwards.&#160; Deferred tax assets and liabilities are
    measured using enacted tax rates in effect for the year in which those temporary differences are expected to be recovered or settled.&#160; We assess the likelihood that net deferred tax assets will be realized from future taxable income, and to the extent
    that we believe that realization is not likely, we establish a valuation allowance.&#160; In accordance with ASC 740, we identified, evaluated and measured the amount of benefits to be recognized for our tax return positions. &lt;/div&gt;
</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_58ecfc84d1294622a88d78fe023cff0a">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Foreign currency
      translation:&lt;/span&gt; The financial position and results of operations of our foreign subsidiary in the UK are measured using local currency as the functional currency.&#160; Assets and liabilities of such subsidiary have been translated into U.S. dollars
    at the year-end exchange rate, related sales and expenses have been translated at the exchange rate as of the date the transaction was recognized, and shareholders&#x2019; equity has been translated at historical exchange rates.&#160; The resulting translation
    gains or losses, net of tax, are recorded in shareholders&#x2019; equity as a cumulative translation adjustment, which is a component of accumulated other comprehensive income and loss.&#160; Foreign currency transaction gains and losses, including those related
    to intercompany balances, are recognized in Other, net on the Consolidated Statements of Operations.&lt;/div&gt;
</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="c20210101to20211231"
      id="Text_b53c3849ef1047b4a88c7708233d8454">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Share-based payments:&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;"&gt;&#160;&lt;/span&gt;At December 31, 2021, we have share-based
    employee compensation plans, which are described more fully in Note 10 - Stock incentive plans.&#160; We account for those plans under the recognition and measurement principles of ASC 718, &#x201c;Compensation &#x2013; Stock Compensation.&#x201d;&#160; Share-based compensation
    expense is measured at the grant date, based on the estimated fair value of the award, and is recognized as expense over the employee&#x2019;s requisite service period.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We use the Black-Scholes option-pricing model to calculate the fair value of share-based awards.&#160; The key assumptions for this
    valuation method include the expected term of the option, stock price volatility, risk-free interest rate, dividend yield, market price of our underlying stock and exercise price.&#160; Many of these assumptions require judgment and are highly sensitive in
    the determination of compensation expense.&#160; Forfeitures are recognized as they occur.&lt;/div&gt;
</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="c20210101to20211231"
      id="Text_217ca0746f8340beb2594a94157f1c56">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Net loss per
      share:&lt;/span&gt; We report net income or loss per share in accordance with ASC 260, &#x201c;Earnings per Share (EPS).&#x201d; Under this guidance, basic EPS, which excludes dilution, is computed by dividing income or loss available to common shareholders by the
    weighted average number of common shares outstanding for the period.&#160; Diluted EPS reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock.&#160; Diluted EPS
    includes in-the-money stock options using the treasury stock method.&#160; During a loss period, the assumed exercise of in-the-money stock options has an anti-dilutive effect, and therefore, these instruments are excluded from the computation of diluted
    EPS.&#160; See Note 12 - Earnings per share.&lt;/div&gt;
</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_2a85fba915304c2ba0c7a9ba7ab83a06">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;3. Note receivable&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;The note receivable balance relates to loans given to a
      third-party software developer from whom we license our food service technology software with an interest rate of &lt;/span&gt;4.5%&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;, which were originally due in April 2020.&#160; In March 2021, we received payment in the amount of $&lt;/span&gt;1.6&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million representing the remaining principal balance and interest due from the third-party.&#160; &lt;/span&gt;Prior to the
    payment being received, notes receivable were stated at unpaid principal balances and interest income was recognized on the accrual method.&#160; Interest income for 2021 and 2020 was $17 thousand and $67 thousand, respectively. &lt;/div&gt;
</us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock>
    <tact:NoteReceivableInterestRate
      contextRef="c20211231"
      decimals="3"
      id="Fact_aeb67104fd314492b5bc6948ed7d89c9"
      unitRef="U007">0.045</tact:NoteReceivableInterestRate>
    <us-gaap:ProceedsFromCollectionOfNotesReceivable
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_0ac78571bb2a4ec8bf082d12b7d9f287"
      unitRef="U001">1600000</us-gaap:ProceedsFromCollectionOfNotesReceivable>
    <tact:NoteReceivableInterestIncome
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_fa8248804377487fb149e8af3b08e415"
      unitRef="U001">17000</tact:NoteReceivableInterestIncome>
    <tact:NoteReceivableInterestIncome
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_cf7bf382a1524ac3904669d13093bfa3"
      unitRef="U001">67000</tact:NoteReceivableInterestIncome>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_c897651d17bc44989a5613e77b89c9e7">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;4. Inventories&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of inventories are:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,479&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,467&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Work-in-process&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; 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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,230&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,819&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,720&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,286&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;/tr&gt;


&lt;/table&gt;
</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_8f9e5a09f6d449baa30ed587c399da12">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of inventories are:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,479&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,467&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Work-in-process&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; 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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,230&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,819&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,720&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,286&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves
      contextRef="c20211231"
      decimals="-3"
      id="Fact_383e1c3ae647446a8e2cda380803b969"
      unitRef="U001">6479000</us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves>
    <us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves
      contextRef="c20201231"
      decimals="-3"
      id="Fact_1bce1488cf0b4d2893b4dc0a00c200f3"
      unitRef="U001">5467000</us-gaap:InventoryRawMaterialsAndSuppliesNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="c20211231"
      decimals="-3"
      id="Fact_c0496853979645a0a4a0c16789d065b5"
      unitRef="U001">11000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="c20201231"
      decimals="-3"
      id="Fact_9cc9642d5f1e4234b8766b993847919e"
      unitRef="U001">0</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="c20211231"
      decimals="-3"
      id="Fact_5596b4b9d5e5411997deba4fd56a1cd2"
      unitRef="U001">1230000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="c20201231"
      decimals="-3"
      id="Fact_514482936ac04510a66df08fe16bc274"
      unitRef="U001">5819000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_ef88a11ee47b48c39d812d0d94a487af"
      unitRef="U001">7720000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_33870ccbfc224bb48336f7297bfb5aa2"
      unitRef="U001">11286000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_6adeff6db11342698507c1d6d2633798">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;5. Fixed assets, net&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of fixed assets, net are:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Tooling, machinery and equipment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,694&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,508&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Furniture and office equipment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,660&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,706&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Computer software and equipment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,973&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,364&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Leasehold improvements&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,872&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,873&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;&#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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;18,199&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;21,451&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Less: Accumulated depreciation and amortization&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(16,736&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(19,979&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,463&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,472&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Construction in-process&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,221&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;478&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,684&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,950&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:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="c20210101to20211231"
      id="Text_bc7d5a0ccec148f680cb81a02872111b">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of fixed assets, net are:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Tooling, machinery and equipment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,694&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,508&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Furniture and office equipment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,660&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,706&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Computer software and equipment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,973&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,364&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Leasehold improvements&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,872&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,873&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;&#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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;18,199&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;21,451&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Less: Accumulated depreciation and amortization&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(16,736&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(19,979&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,463&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,472&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Construction in-process&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,221&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;478&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,684&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,950&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:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"
      decimals="-3"
      id="Fact_566e8de61b47431abdb0ec96b71d9e1f"
      unitRef="U001">6694000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20201231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember"
      decimals="-3"
      id="Fact_5799c7f2283e417f97728c7693e068b7"
      unitRef="U001">9508000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember"
      decimals="-3"
      id="Fact_8d5d29a4b7114944bd592d42e241f5a6"
      unitRef="U001">1660000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20201231_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndOfficeEquipmentMember"
      decimals="-3"
      id="Fact_6c1b4eb288e447048006dc090ee68f7e"
      unitRef="U001">1706000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember"
      decimals="-3"
      id="Fact_e5fccc77f88041b882c237c6a9b3764d"
      unitRef="U001">6973000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20201231_PropertyPlantAndEquipmentByTypeAxis_ComputerSoftwareAndEquipmentMember"
      decimals="-3"
      id="Fact_41bd4258e7f944238c36fb8540a13ccf"
      unitRef="U001">7364000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember"
      decimals="-3"
      id="Fact_12ed6798203f411f9ccf1fc0384c1c2f"
      unitRef="U001">2872000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20201231_PropertyPlantAndEquipmentByTypeAxis_LeaseholdImprovementsMember"
      decimals="-3"
      id="Fact_56f406812c0344ef8a983ff848402653"
      unitRef="U001">2873000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4fcebf33452f4a9193847ead62537e8c"
      unitRef="U001">18199000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20201231"
      decimals="-3"
      id="Fact_c7d2276a71f64b0388e87a1224a4ad2f"
      unitRef="U001">21451000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20211231"
      decimals="-3"
      id="Fact_5a4c18ee0fba49f3bb92233f48b55f0a"
      unitRef="U001">16736000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20201231"
      decimals="-3"
      id="Fact_6d827129c559429fbffa0d1f010d7e64"
      unitRef="U001">19979000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember"
      decimals="-3"
      id="Fact_3adefa19e4aa42a6a4b92b7b743f36a4"
      unitRef="U001">1463000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20201231_PropertyPlantAndEquipmentByTypeAxis_FixedAssetsExcludingConstructionInProcessMember"
      decimals="-3"
      id="Fact_239b58fb9fc94ea4a9453e34d50e3d9a"
      unitRef="U001">1472000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20211231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember"
      decimals="-3"
      id="Fact_063c533fdbd3481c9abbde0bcf835841"
      unitRef="U001">1221000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20201231_PropertyPlantAndEquipmentByTypeAxis_ConstructionInProgressMember"
      decimals="-3"
      id="Fact_f76b58ffe7f248988b1aa2455b3c1a39"
      unitRef="U001">478000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_47d108090eba4322a7fad9f37c71d7a2"
      unitRef="U001">2684000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_08f3f2dd937b4616a88e5d81fd557732"
      unitRef="U001">1950000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_02dae1eef11e490ba4d04083cf52b1cc">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;6. Intangible assets, net&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Identifiable intangible assets are recorded in Intangible assets, net in the accompanying Consolidated Balance Sheets and are comprised of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt;"&gt;&lt;span style="line-height: 10.25pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross Amount&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accumulated Amortization&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross Amount&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accumulated Amortization&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Purchased 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,591&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,195&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,526&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,975&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Customer relationships&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,300&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,300&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Trademark&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;480&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(450&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Covenant not to compete&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;146&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(146&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Patents&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(14&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;56&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(54&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;80&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(80&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,606&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,209&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,588&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(4,005&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Amortization expense was $186
    thousand and $234 thousand in 2021
    and 2020, respectively.&#160; Amortization expense for each of the next five years ending December 31 is expected to be as follows: $155 thousand in 2022; $154 thousand in 2023; $88 thousand in 2024; and none thereafter.&lt;/div&gt;
</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_2c9b6e33c54f441a8bdc5b9f421a3723">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Identifiable intangible assets are recorded in Intangible assets, net in the accompanying Consolidated Balance Sheets and are comprised of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt;"&gt;&lt;span style="line-height: 10.25pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross Amount&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accumulated Amortization&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross Amount&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Accumulated Amortization&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Purchased 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,591&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,195&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,526&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,975&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Customer relationships&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,300&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,300&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Trademark&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;480&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(450&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Covenant not to compete&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;146&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(146&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Patents&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;15&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(14&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;56&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(54&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;80&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(80&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,606&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,209&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,588&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(4,005&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember"
      decimals="-3"
      id="Fact_205d637ac90a4bf08ea67475cdedc19d"
      unitRef="U001">1591000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember"
      decimals="-3"
      id="Fact_134c0bbd9150420780c9593812f91516"
      unitRef="U001">1195000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember"
      decimals="-3"
      id="Fact_4e5d35b81fc64268916057c297adf3e5"
      unitRef="U001">2526000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_TechnologyBasedIntangibleAssetsMember"
      decimals="-3"
      id="Fact_c6d4d7ba96694e499194b953e208c249"
      unitRef="U001">1975000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember"
      decimals="-3"
      id="Fact_719b504c0f434f9390ecf43b3bdcfdde"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember"
      decimals="-3"
      id="Fact_a72f44c9b6a740edad58343101676912"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember"
      decimals="-3"
      id="Fact_9096f622a2254b878de21295bf16a458"
      unitRef="U001">1300000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_CustomerRelationshipsMember"
      decimals="-3"
      id="Fact_d3e8752d26d2473fa24520d79d74ee4c"
      unitRef="U001">1300000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember"
      decimals="-3"
      id="Fact_89ff376a7d5845fca71d711854338eff"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember"
      decimals="-3"
      id="Fact_8c331049768449b0a1c896ed1511d9ce"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember"
      decimals="-3"
      id="Fact_e41882732c2a4003bcde8d2a47adaab3"
      unitRef="U001">480000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_TrademarksMember"
      decimals="-3"
      id="Fact_f69baba95c8f44eb9390ef2fd8bcb1fe"
      unitRef="U001">450000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember"
      decimals="-3"
      id="Fact_abb1e961a0d140f69ee8c32702785067"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember"
      decimals="-3"
      id="Fact_10ddb952e63346daa003f3644045411f"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember"
      decimals="-3"
      id="Fact_4ff95ce84cf24dabb4b4ca7d87b83f47"
      unitRef="U001">146000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_NoncompeteAgreementsMember"
      decimals="-3"
      id="Fact_ccf6adf38477412a9392fde263f199ab"
      unitRef="U001">146000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember"
      decimals="-3"
      id="Fact_cee7f8382401471387dc092d24296eb5"
      unitRef="U001">15000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember"
      decimals="-3"
      id="Fact_e9e7fc77a55b416eb27f9394cf540d5c"
      unitRef="U001">14000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember"
      decimals="-3"
      id="Fact_4d9b4a2346c6447a8488ce983a8dc949"
      unitRef="U001">56000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_PatentsMember"
      decimals="-3"
      id="Fact_a250b1405e0740288e08a71273857c3f"
      unitRef="U001">54000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember"
      decimals="-3"
      id="Fact_ab2fea754bcc4ed1bdf565e6e4c8771d"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember"
      decimals="-3"
      id="Fact_62fa6b966efc47b0b71b16c3cb3162c4"
      unitRef="U001">0</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember"
      decimals="-3"
      id="Fact_9dc25dcd868d47a380b0f6a0e274ac35"
      unitRef="U001">80000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231_FiniteLivedIntangibleAssetsByMajorClassAxis_OtherIntangibleAssetsMember"
      decimals="-3"
      id="Fact_06a6094b2aa44bb48dec2597f13e1693"
      unitRef="U001">80000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20211231"
      decimals="-3"
      id="Fact_44b685e163ce4c62960424e4a88c0199"
      unitRef="U001">1606000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20211231"
      decimals="-3"
      id="Fact_6df3b55918774f08817b8d82d4d0ec3f"
      unitRef="U001">1209000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="c20201231"
      decimals="-3"
      id="Fact_8b9e100d666344ca8eae31ab6d324598"
      unitRef="U001">4588000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="c20201231"
      decimals="-3"
      id="Fact_1d993ccc8a294de7b25befbac65c93dc"
      unitRef="U001">4005000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_1f602044c8d34b98b228d55230ed472d"
      unitRef="U001">186000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_b6653475fffb41a689f02f7222554aa5"
      unitRef="U001">234000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="c20211231"
      decimals="-3"
      id="Fact_70ba98556fff4df287f668538cb048bc"
      unitRef="U001">155000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="c20211231"
      decimals="-3"
      id="Fact_529f1ca6319145eeb12404682f8d47e1"
      unitRef="U001">154000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="c20211231"
      decimals="-3"
      id="Fact_054ed807645d42b2aebeb0799c42c153"
      unitRef="U001">88000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <tact:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearThree
      contextRef="c20211231"
      decimals="-3"
      id="Fact_549fb21b615040ad9852ed2351ec4c63"
      unitRef="U001">0</tact:FiniteLivedIntangibleAssetExpectedAmortizationAfterYearThree>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_d679665b44544d0980ceb3928ea7e557">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;7. Accrued liabilities&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of accrued liabilities are:&lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Salaries and compensation related&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,854&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,328&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;79&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;112&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Professional and consulting&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;285&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;257&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;676&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;968&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,894&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,665&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:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_432454366ed440e986e842ef7bb68bc7">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of accrued liabilities are:&lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Salaries and compensation related&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,854&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,328&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;79&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;112&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Professional and consulting&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;285&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;257&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;676&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;968&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,894&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,665&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:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_549e34ccf0e44129a7c95b510e244d02"
      unitRef="U001">2854000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_e75a80b12ded468d93971346b945c522"
      unitRef="U001">2328000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:ExtendedProductWarrantyAccrualCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_546b129c90a649ec89e28289ec03381d"
      unitRef="U001">79000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
    <us-gaap:ExtendedProductWarrantyAccrualCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_dc3b587146654b9888807044ebabb1e3"
      unitRef="U001">112000</us-gaap:ExtendedProductWarrantyAccrualCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_12004ed6fe5e4637bf4644308882412d"
      unitRef="U001">285000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_f9a84ef4fa5b45759cc05503dcd8a32e"
      unitRef="U001">257000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_9debebb91b3343a09121fce4d589ccaa"
      unitRef="U001">676000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_b0c61f4500c44b499f2cf91fe05ac1b3"
      unitRef="U001">968000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20211231"
      decimals="-3"
      id="Fact_fd2bb6f7775e43bba19fb003f42bd82c"
      unitRef="U001">3894000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="c20201231"
      decimals="-3"
      id="Fact_c6b17199fca94da0891a6d73fb32823f"
      unitRef="U001">3665000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock
      contextRef="c20210101to20211231"
      id="Text_4be85790c86e46c8a04f2516e69d3c63">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;8. Retirement savings plan&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We maintain a 401(k) plan under which all full-time employees are eligible to participate at the beginning of the month immediately
    following their date of hire.&#160; We match employees&#x2019; contributions at a rate of 50% of employees&#x2019; contributions up to the first 6% of the employees&#x2019; compensation contributed to the 401(k) plan.&#160; Our matching contributions were $312 thousand and $270 thousand in 2021 and 2020, respectively.&lt;/div&gt;
</us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_d426313d7c3b4d59b74de28a937f33d9"
      unitRef="U007">0.50</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_df5ba21bf00e4e28a4a56e5cf567074c"
      unitRef="U007">0.06</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_04beed4c28f3402a82f3ded96b54eff3"
      unitRef="U001">312000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_7f303b8eac4846f2aa74220a947ed066"
      unitRef="U001">270000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_c4459d7d1a2c45cd8a102ef8e7625707">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;9. Borrowings&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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.&#160; The Siena Credit
    Facility provides for a revolving credit line of up to $10.0 million expiring 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 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.&#160; We also pay a
    fee of 0.50% on unused borrowings under the Siena Credit Facility.&#160; Borrowings under the Siena Credit Facility are secured by a lien on
    substantially all the assets of the Company.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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.&#160; The three-month period from April 1, 2020 to June 30, 2020 was the first period we were subject to the financial covenant, which required the Company to maintain a minimum EBITDA and continued through the 12-month period
    from April 1, 2020 to March 31, 2021.&#160; On July 21, 2021, the Company entered into an amendment (the &#x201c;Credit Facility Amendment&#x201d;) to the Siena Credit Facility.&#160; The Credit Facility Amendment 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 ending July 31, 2021.&#160; We have been in compliance with our excess availability covenant each month since July 31, 2021, and as of&#160;
    December 31, 2021 and 2020, we had no
    outstanding borrowings under the Siena Credit Facility and $5.1 million of borrowing capacity available under the Siena Credit Facility as of
    December 31, 2021.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 11.4pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;On May 1, 2020 (the &#x201c;Loan Date&#x201d;), the Company was granted the PPP Loan from Berkshire Bank in the aggregate amount of $2.2 million, pursuant to the PPP.&#160; Under the terms of the PPP, the PPP Loan may be forgiven to the extent that funds from the PPP Loan were used for payroll
    costs and costs to continue group health care benefits, as well as for interest on mortgage obligations incurred before February 15, 2020, rent under lease agreements in effect before February 15, 2020, utilities for which service began before February
    15, 2020, and interest on debt obligations incurred before February 15, 2020, subject to conditions and limitations provided in the CARES Act.&#160; At least 60% (under the PPP terms, as amended) of the proceeds from the PPP Loan needed to have been used
    for eligible payroll costs for the PPP Loan to be forgiven.&lt;/div&gt;

&lt;div style="line-height: 11.4pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 11.4pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;The PPP Loan, which was evidenced by a Note dated the Loan
      Date issued by the Company (the &#x201c;Note&#x201d;) in favor of Berkshire Bank, as lender (the &#x201c;PPP Lender&#x201d;), was scheduled to mature on &lt;/span&gt;May 1, 2022&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; and had a fixed interest rate of &lt;/span&gt;1.0%&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; per annum, accruing from the Loan Date and payable monthly.&#160; The Company submitted its PPP Loan forgiveness application in May 2021 to the SBA through Berkshire Bank and submitted the related loan
      necessity questionnaire in June 2021.&#160; On July 8, 2021, the Company received notifications from Berkshire Bank and the SBA that its PPP Loan (including all interest accrued thereon) of $&lt;/span&gt;2.2&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million had been fully forgiven by the SBA and that the forgiveness payment date was July 1, 2021.&#160; No payments
      were due on the PPP Loan for six months from the date of first disbursement, and because a loan forgiveness application was submitted to the SBA within 10 months after the end of the covered period, no payments were due until the date on which the
      SBA remitted the loan forgiveness&#160; amount to the PPP Lender and interest accrued during the deferment period was included in the forgiveness amount.&#160; &lt;/span&gt;The Note was unsecured and guaranteed by the SBA.&#160; &lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;The forgiveness of the PPP Loan was reported as &#x201c;Gain on forgiveness of long-term debt&#x201d; in the Consolidated Statement of Operations during the year ended December 31, 2021.&lt;/span&gt;&lt;/div&gt;
</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_83863965a2f44a52a11767c0676d502c"
      unitRef="U001">10000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityExpirationDate1
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      id="Fact_f9b255056917473b84d74a09a2b1a38f">2023-03-13</us-gaap:LineOfCreditFacilityExpirationDate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_PrimeRateMember"
      decimals="4"
      id="Fact_7261681b17a94bc9872a9646636e2b8f"
      unitRef="U007">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_VariableRateAxis_FederalFundsEffectiveSwapRateMember"
      decimals="4"
      id="Fact_3f3a242145394469b4015bd00b5c8bc7"
      unitRef="U007">0.0225</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="c20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="4"
      id="Fact_ee21771357d5492b8e9869d2b9234968"
      unitRef="U007">0.0650</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="c20200313_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-3"
      id="Fact_cb1a013b5f2d4fef8bbab097986b43ed"
      unitRef="U001">245000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="4"
      id="Fact_46df7dd3df9e401f809164fdd307c289"
      unitRef="U007">0.0050</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <tact:DebtInstrumentFinancialCovenantEligibleAccountsReceivable
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="2"
      id="Fact_bb2430f0ce814f5a95db00a42846c6e8"
      unitRef="U007">0.85</tact:DebtInstrumentFinancialCovenantEligibleAccountsReceivable>
    <tact:DebtInstrumentFinancialCovenantEligibleInventory
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_80a5915551ff41abb0fc69682a8e4550"
      unitRef="U001">5000000.0</tact:DebtInstrumentFinancialCovenantEligibleInventory>
    <tact:DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="2"
      id="Fact_6a77fd2f2e3f4d94a28b2c6708586191"
      unitRef="U007">0.50</tact:DebtInstrumentFinancialCovenantEligibleInventoryRawMaterialPercentage>
    <tact:DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage
      contextRef="c20210101to20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="2"
      id="Fact_1e6b99c31dfa48dcb79a8b1c871aa09f"
      unitRef="U007">0.60</tact:DebtInstrumentFinancialCovenantEligibleInventoryFinishedGoodsInventoryPercentage>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="c20210721_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember_RangeAxis_MinimumMember"
      decimals="-3"
      id="Fact_c5f816e9fe854e0895baef3efe5af6d5"
      unitRef="U001">750000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:SecuredDebt
      contextRef="c20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-3"
      id="Fact_8d77b269c68b4b79bc5f6b206d762cd1"
      unitRef="U001">0</us-gaap:SecuredDebt>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="c20211231_DebtInstrumentAxis_RevolvingCreditFacilitySienaLendingGroupLlcMember"
      decimals="-5"
      id="Fact_b4d066465ce24ec89f39864c32f8f9ae"
      unitRef="U001">5100000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="c20200501_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember"
      decimals="-5"
      id="Fact_20b7e2ce0a5e42f4a3876dec24ba1358"
      unitRef="U001">2200000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:LineOfCreditFacilityExpirationDate1
      contextRef="c20210101to20211231_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember"
      id="Fact_55bff91d464a40aab53da3bb7172cb29">2022-05-01</us-gaap:LineOfCreditFacilityExpirationDate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="c20211231_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember"
      decimals="3"
      id="Fact_7f25ad0a4ed649a69d327e2e0b66bb61"
      unitRef="U007">0.010</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentDecreaseForgiveness
      contextRef="c20210701to20210701_DebtInstrumentAxis_PaycheckProtectionProgramLoanMember"
      decimals="-5"
      id="Fact_7a434c3d4d0d4945ba097f779dcf8d0b"
      unitRef="U001">2200000</us-gaap:DebtInstrumentDecreaseForgiveness>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="c20210101to20211231"
      id="Text_da76e37629e04642b6231ec47d5ba588">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;10. Stock incentive plans&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Stock incentive
      plans&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-style: italic;"&gt;.&lt;/span&gt;&#160; We currently have two
    stock incentive plans: the 2005 Equity Incentive Plan and the 2014 Equity Incentive Plan, which provide for awards to executives, key employees, directors and consultants.&#160; The plans generally provide for awards in the form of: (i) incentive stock
    options, (ii) non-qualified stock options, (iii) restricted stock, (iv) restricted stock units (which may include performance-based vesting), (v) stock appreciation rights or (vi) limited stock appreciation rights.&#160; Awards granted under these plans
    have exercise prices equal to 100% of the fair market value of the common stock at the date of grant.&#160; Awards granted have a ten-year term and generally vest over a two-year
    to five-year period, unless automatically accelerated for certain defined events.&#160; As of May 2014, no new awards may be made under the 2005
    Equity Incentive Plan.&#160; Under our 2014 Equity Incentive Plan, as amended in May 2020, we are authorized to grant awards of up to 2,200,000
    shares of TransAct common stock.&#160; At December 31, 2021, 611,652 shares of common stock remained available for issuance under the 2014 Equity Incentive Plan.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Under the assumptions indicated below, the weighted-average per share fair value of stock option grants for 2021 and 2020 was $5.41 and $3.19, respectively.&#160; We also issued
    restricted stock units for certain executives and directors that vest over a specified period of time, and in some instances require achieving certain performance metrics.&#160; The weighted-average per share fair value of these restricted stock units was $10.27 and $9.77 in 2021 and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The table below indicates the key assumptions used in the option valuation calculations for options granted in 2021 and 2020 and a discussion of our
    methodology for developing each of the assumptions used in the valuation model:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Expected option 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6.9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Expected volatility&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;50.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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;41.7&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Risk-free interest rate&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Dividend yield&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Expected Option
      Term&lt;/span&gt; - This is the weighted average period of time over which the options granted are expected to remain outstanding giving consideration to our historical exercise patterns.&#160; Options granted have a maximum term of ten years and an increase in the expected term will increase compensation expense.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Expected Volatility&lt;/span&gt;
    &#x2013; The stock volatility for each grant is measured using the weighted average of historical daily price changes of our common stock over the most recent period approximately equal to the expected option term of the grant.&#160; An increase in the expected
    volatility factor will increase compensation expense.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Risk-Free Interest
      Rate&lt;/span&gt; - This is the U.S. Treasury rate in effect at the time of grant having a term approximately equal to the expected term of the option.&#160; An increase in the risk-free interest rate will increase compensation expense.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold; font-style: italic;"&gt;Dividend Yield&lt;/span&gt;
    &#x2013;The dividend yield is calculated by dividing the annual dividend declared per common share by the weighted average market value of our common stock on the date of grant. An increase in the dividend yield will decrease compensation expense.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;For 2021 and 2020, we recorded $1.2 million and $0.9 million of share-based compensation expense, respectively, included primarily in general and administrative expense in our Consolidated Statements of
    Operations.&#160; We also recorded income tax benefits of $265 thousand and $193 thousand in 2021 and 2020, respectively, related to such share-based compensation.&#160; At December 31, 2021,
    these benefits are recorded as a deferred tax asset in the Consolidated Balance Sheets.&lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Equity award activity in the 2005 Equity Incentive Plan and the 2014 Equity Incentive Plan is summarized below:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock Options&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Restricted Stock Units&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Number of Shares&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt; Average Price*&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Number of Units&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Average Price**&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Outstanding at December 31, 2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,287,605&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8.98&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;110,550&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.30&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Granted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;153,000&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.55&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;95,200&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.27&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Exercised&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(97,000&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8.47&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(50,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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.29&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Forfeited&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(45,750&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8.87&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Expired&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(28,500&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.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; 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: 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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Outstanding at December 31, 2021&lt;/div&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;&#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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,269,355&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="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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.18&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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;155,225&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="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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.28&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;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;*&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted average exercise price per share&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', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;**&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted average grant stock price per share&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following summarizes information about equity awards outstanding that are vested and expect to vest and equity awards that are exercisable at
    December 31, 2021:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Equity Awards Vested and Expected to Vest&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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Equity Awards That Are Exercisable&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Awards&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Average Price*&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Aggregate Intrinsic Value&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Remaining Term**&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Awards&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Average Price*&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Aggregate Intrinsic Value&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Remaining Term**&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: 20%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock Options&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,269,355&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.18&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,662&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5.6&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;856,723&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.00&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,982&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.1&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: 20%;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Restricted stock units&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;132,518&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,444&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2.2&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;*&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted average exercise price per share&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', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;**&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted-average contractual remaining term in years&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Shares that are issued upon exercise of employee stock awards are newly issued shares and not issued from treasury stock.&#160; As of
    December 31, 2021, unrecognized compensation cost related to non-vested equity awards granted under our stock incentive plans is approximately
    $2.1 million, which is expected to be recognized over a weighted average period of 2.4 years.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The total fair value of awards vested was $1.7 million during both the years ended December 31, 2021 and 2020.&#160; The total intrinsic value (which is the amount by which the stock price exceeded the exercise price on the date of exercise) of stock options
    exercised during the years ended December 31, 2021 and 2020 was $268 thousand and $174 thousand, respectively, and cash received from option exercises
    was $436 thousand and $375 thousand in
    2021 and 2020, respectively.&#160; 97,000
    and 62,500 stock options were exercised during the year ended December 31, 2021 and 2020, respectively.&#160; We recorded a realized tax provision in 2021 and 2020 from
    equity-based awards of $35 thousand and $14
    thousand, respectively, related to options exercised.&lt;/div&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfStockIncentivePlans
      contextRef="c20210101to20211231"
      decimals="INF"
      id="Fact_c0446810db7a4765a230800d354fb505"
      unitRef="U008">2</tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfStockIncentivePlans>
    <tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardExercisePriceAsPercentageOfFairMarketValueOfCommonStockAtDateOfGrant
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember"
      decimals="2"
      id="Fact_a6fffe9626ed4af9bc03b7667207685a"
      unitRef="U007">1</tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardExercisePriceAsPercentageOfFairMarketValueOfCommonStockAtDateOfGrant>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember"
      id="Fact_514f01e874f74d0bbe7aa99ba1cd74b5">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MinimumMember"
      id="Fact_3e74fe5487d649b29df7fa4a57066032">P2Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_RangeAxis_MaximumMember"
      id="Fact_08cee7a0457145db95337e8c6dc85b79">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c20211231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_462b36ee871a45ffa76d3f5b33c5cf1b"
      unitRef="U002">2200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="c20211231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_f1b29437f19248a4b76e4e80a6be29c6"
      unitRef="U002">611652</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_73404a201f5a4a6d88c0d36571ed7ac0"
      unitRef="U003">5.41</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_7e49c77882124d5abf93105e24707e19"
      unitRef="U003">3.19</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_8974ab6f05554141bef9df358bb02748"
      unitRef="U003">10.27</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20201231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_0e536b7ad2574d2d94844ed115408b17"
      unitRef="U003">9.77</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_443bc1fe568e41aa8f39dc0d1190791a">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The table below indicates the key assumptions used in the option valuation calculations for options granted in 2021 and 2020 and a discussion of our
    methodology for developing each of the assumptions used in the valuation model:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Expected option 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6.9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Expected volatility&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;50.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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;41.7&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Risk-free interest rate&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.9&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Dividend yield&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="c20210101to20211231_PlanNameAxis_EquityIncentivePlan2014Member"
      id="Fact_4f5d62f51f774ba7850beaeddb73a635">P6Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="c20200101to20201231_PlanNameAxis_EquityIncentivePlan2014Member"
      id="Fact_897eba36fe294229a7172dcaefea987d">P7Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="c20210101to20211231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="3"
      id="Fact_1b8b7ec97213480391110fdecc896dfb"
      unitRef="U007">0.505</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="c20200101to20201231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="3"
      id="Fact_764d6819fb0d4b5e811e38b6ea28615b"
      unitRef="U007">0.417</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="c20210101to20211231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="3"
      id="Fact_e022b718c2484b8ea135fb30d1185643"
      unitRef="U007">0.012</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="c20200101to20201231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="3"
      id="Fact_6eec17bf8e244bf3be88a9231d66d363"
      unitRef="U007">0.009</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="c20210101to20211231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="3"
      id="Fact_89e9fdd7bb6b41db8545dee7679eb896"
      unitRef="U007">0.000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="c20200101to20201231_PlanNameAxis_EquityIncentivePlan2014Member"
      decimals="3"
      id="Fact_e6b85abdea584aa48b8e365341b01ef8"
      unitRef="U007">0.000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2014Member"
      id="Fact_2e2e4600bf51437596bca38e2f874805">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20210101to20211231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember"
      decimals="-5"
      id="Fact_47f917c833f6479ab798d5d8e0dd67dc"
      unitRef="U001">1200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20200101to20201231_IncomeStatementLocationAxis_GeneralAndAdministrativeExpenseMember"
      decimals="-5"
      id="Fact_cfce5c865d5044c39f643ca03b676a8a"
      unitRef="U001">900000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_c44bfe089eac4c55a134298379de1df3"
      unitRef="U001">265000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_3494eb034938410b808da608a01a576d"
      unitRef="U001">193000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_629fd486a6bb45a4a9c5750f6f4cd8a8">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Equity award activity in the 2005 Equity Incentive Plan and the 2014 Equity Incentive Plan is summarized below:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock Options&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Restricted Stock Units&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Number of Shares&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt; Average Price*&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Number of Units&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Average Price**&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Outstanding at December 31, 2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,287,605&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8.98&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;110,550&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.30&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Granted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;153,000&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.55&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;95,200&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.27&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Exercised&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(97,000&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8.47&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(50,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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.29&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Forfeited&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(45,750&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8.87&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Expired&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(28,500&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.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; 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: 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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Outstanding at December 31, 2021&lt;/div&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;&#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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,269,355&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="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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.18&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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;155,225&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="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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10.28&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;/tr&gt;


&lt;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;*&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted average exercise price per share&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', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;**&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted average grant stock price per share&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_3c660fd4f904452eb241379a5f8277b6"
      unitRef="U002">1287605</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_eda0294a1e184539a4e55e0cc64a32e4"
      unitRef="U003">8.98</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="c20201231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_d5114355604e40c683f069058e93991f"
      unitRef="U002">110550</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20201231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_4532d7bb5d5e49a59bc227be7b49e3c3"
      unitRef="U003">10.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_1b3d7f5458f74f59b6751628de172f28"
      unitRef="U002">153000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_11f7c7940cb447f4be4b89111a161e61"
      unitRef="U003">10.55</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_c111bb39a9cc46aba4cca2dbacb1d937"
      unitRef="U002">95200</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_3c1bc3bf75ae42809b901affb2e39d83"
      unitRef="U003">10.27</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_7479229f4aca4ad28c0da55fafff54c2"
      unitRef="U002">97000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_341af3cccf6b4c90b6dacfd466c2a72a"
      unitRef="U003">8.47</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_3f2ff4593b5c4752a5df4c0df073013c"
      unitRef="U002">50525</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExercisesInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_a9c83316b680472f8697b2f43948f41d"
      unitRef="U003">10.29</tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExercisesInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_733981a4b40849cd9901b868884a6067"
      unitRef="U002">45750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_4d318218b4c8419da5729ae5d3a44d0d"
      unitRef="U003">8.87</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="INF"
      id="Fact_b1e117fc6966409887e96dfb8249c706"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsForfeitures>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_f42cd3a3f3ca4efcab1a34623971b4b0"
      unitRef="U003">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_e4a28318d41a4789b83387b19f58332b"
      unitRef="U002">28500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_7fa9fff2f815438785e751a7709e7b83"
      unitRef="U003">10.22</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="INF"
      id="Fact_042f482f5bb64aebb4ce60466dd45588"
      unitRef="U002">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExpirations>
    <tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpirationsWeightedAverageGrantDateFairValue
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_3f635a049bd440c699554704b596c0f4"
      unitRef="U003">0</tact:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsExpirationsWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_88fb2dba800b474c9d09c6260d4132a1"
      unitRef="U002">1269355</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_58c63cc0cfda4df393fec3b461f57817"
      unitRef="U003">9.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_14cc96933fb0409f815add75fef77931"
      unitRef="U002">155225</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_fbd2499553ba4833a79eeb4cc73d1d0d"
      unitRef="U003">10.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_b4ce87dfa5d941c482369c20af06926f">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following summarizes information about equity awards outstanding that are vested and expect to vest and equity awards that are exercisable at
    December 31, 2021:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Equity Awards Vested and Expected to Vest&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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Equity Awards That Are Exercisable&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Awards&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Average Price*&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Aggregate Intrinsic Value&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Remaining Term**&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Awards&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Average Price*&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Aggregate Intrinsic Value&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Remaining Term**&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: 20%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock Options&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,269,355&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.18&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,662&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5.6&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;856,723&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.00&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,982&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: 7%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.1&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: 20%;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Restricted stock units&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;132,518&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,444&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2.2&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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: 7%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&#x2013;&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;/table&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;*&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted average exercise price per share&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', Times, serif; font-size: 9pt; width: 100%; text-align: left; color: #000000;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 18pt; vertical-align: top; align: right; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;**&lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top; text-align: left;"&gt;
          &lt;div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;weighted-average contractual remaining term in years&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAndExercisableTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_c627e48a6a4b4cc8b69556889b939989"
      unitRef="U002">1269355</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_46445371553641de90936e45fc92e64c"
      unitRef="U003">9.18</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="-3"
      id="Fact_b48e5d24f0974e24a1cebdca19760b60"
      unitRef="U001">2662000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      id="Fact_2200dbb582a34135a33a33e7991a39fc">P5Y7M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_4d55c6a4cdbe4f73b0aa586d97a6d276"
      unitRef="U002">856723</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="2"
      id="Fact_86c7680febb546969024d9eb2d4b8462"
      unitRef="U003">9.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="c20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="-3"
      id="Fact_36caa33be3164d959eb13ca6caa70d8c"
      unitRef="U001">1982000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      id="Fact_01fe42f5d6f34989a866fbd5509a91ea">P4Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_864529d456124f059f0316dbe6bcaa9f"
      unitRef="U002">132518</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice
      contextRef="c20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_49be8004ba664c0eaf328ac4dc33e44c"
      unitRef="U003">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="-3"
      id="Fact_6280f3d2021b4e849b3d683fb87c595f"
      unitRef="U001">1444000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueVested>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="c20210101to20211231_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      id="Fact_40d1567dd34c48a8b2ddc99b368df7e7">P2Y2M12D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="c20211231"
      decimals="-5"
      id="Fact_7c2d12fac46841259de7eb70a37dd587"
      unitRef="U001">2100000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="c20210101to20211231"
      id="Fact_0c0dc39dc4c84e51a9b9aa7d29e31b28">P2Y4M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_659a6b38d9824abdb54aaf4f8a3077bb"
      unitRef="U001">1700000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1
      contextRef="c20200101to20201231"
      decimals="-5"
      id="Fact_3f9f9865ab944f819bb2b7e1a684cfa6"
      unitRef="U001">1700000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedInPeriodFairValue1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_2430d9ae81d94200a5320597cb1bcafa"
      unitRef="U001">268000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_d1878fca51644e6ca737dd149d7747d2"
      unitRef="U001">174000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_acd1efc0f38d4ca8838cf640512cd886"
      unitRef="U001">436000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_205b07d9b52d4c0c93da30c43500c978"
      unitRef="U001">375000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20210101to20211231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_310ca98fc6d74e57abd4d55c7ac35830"
      unitRef="U002">97000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="c20200101to20201231_AwardTypeAxis_EmployeeStockOptionMember_PlanNameAxis_EquityIncentivePlan2005AndEquityIncentivePlan2014Member"
      decimals="0"
      id="Fact_f864a7206669466b80d21877a3c3b3a4"
      unitRef="U002">62500</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_6b76a561701c41f1b0c527dd4853d7e1"
      unitRef="U001">-35000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_a89d63edc3804fcf82bdd27708259d54"
      unitRef="U001">-14000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_762da0a85f5b417aa5d8f3d477394e38">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;11. Income taxes&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of the income tax benefit are as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Current:&lt;/div&gt;
        &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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;26&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,141&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;State&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;51&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;17&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Foreign&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(48&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;79&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,172&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred:&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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,086&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(483&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;State&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(62&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(36&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Foreign&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;152&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: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,150&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(367&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Income tax benefit&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,071&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,539&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Our effective tax rates were &lt;/span&gt;33.3%&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; and &lt;/span&gt;31.1%&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; for &lt;/span&gt;2021&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; and &lt;/span&gt;2020&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;, respectively.&#160; The tax benefit recorded for 2021 included the recognition of the gain on the forgiveness of the PPP Loan which is not taxable.&#160; &lt;/span&gt;The effective tax rate for 2020 included the impact of the net operating
    loss (&#x201c;NOL&#x201d;) that we carried back to prior years.&#160; The CARES Act permits NOLs incurred in 2018, 2019 and 2020 to be carried back to each of the five preceding taxable years to generate a refund of previously paid income taxes.&#160; We generated a NOL for
    2020 which was carried back to tax years that had a federal statutory tax rate of 34% compared to 21% in 2020 and resulted in a tax refund of $2.2 million that was received in October 2021 causing a significant reduction in prepaid income taxes at December 31, 2021 compared to
    December 31, 2020.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;At December 31, 2021, we
    have $2.0 million of federal net operating loss carryforwards and $78 thousand of state net operating loss carryforwards, $901 thousand in R&amp;amp;D credit
    carryforwards, and no state tax credit carryforwards.&#160; Foreign loss before taxes was $404 thousand and $468 thousand in 2021 and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred income taxes arise from temporary differences between the tax basis of assets and liabilities and their reported amounts in the Consolidated
    Financial Statements.&#160; Our deferred tax assets and liabilities were comprised of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred tax assets:&lt;/div&gt;
        &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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal net operating losses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,976&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Foreign net operating losses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;624&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;563&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Depreciation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;306&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;302&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Inventory reserves&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;719&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred revenue&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;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;&#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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty reserve&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;22&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;31&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock compensation expense&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;796&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;731&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other accrued compensation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;308&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;388&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;R&amp;amp;D credit carryforward&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;901&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;460&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other liabilities and reserves&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;250&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;394&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 27pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross deferred tax assets&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,917&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,635&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 27pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Valuation allowance&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(733&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(659&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -18pt; margin-left: 45pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net deferred tax assets&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,184&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,976&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" 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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred tax liabilities:&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;&#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="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: 76%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;43&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;37&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: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 36pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net deferred tax liabilities&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;43&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;37&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net deferred tax assets&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,141&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,939&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;As of December 31, 2021, a valuation allowance
    of $733 thousand has been established for foreign net operating loss carryforwards that are not expected to be used. The following table
    summarizes the activity recorded in the valuation allowance on the deferred tax assets:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;659&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;444&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Additions charged to income tax provision&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;74&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;215&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;733&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;659&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;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Differences between the U.S. statutory federal income tax rate and our effective income tax rate are analyzed below:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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="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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal statutory rate&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;21.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;21.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;PPP loan forgiveness&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7.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;&#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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;R&amp;amp;D credit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock award excess tax benefit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;State income taxes, net of federal income taxes&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;U.S. corporate tax rate change&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.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;&#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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Business meals and entertainment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Miscellaneous permanent items&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Uncertain tax positions&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.4&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock option cancellations&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.6&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Valuation allowance and tax accruals&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2.6&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.3&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Effective tax rate&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;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;33.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;31.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We had $144 thousand and $121 thousand of total gross unrecognized tax benefits at December 31, 2021
    and 2020, respectively that, if recognized, would favorably affect the effective income tax rate in any future periods.&#160; We are not aware of
    any events that could occur within the next twelve months that could cause a significant change in the total amount of unrecognized tax benefits.&#160; A tabular reconciliation of the gross amounts of unrecognized tax benefits at the beginning and end of
    the year is as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;121&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;107&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Tax positions taken during the current period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;41&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Lapse of statute of limitations&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(24&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(27&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;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: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;121&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We expect $28 thousand of
    the $144 thousand of unrecognized tax benefits will reverse in 2022 upon the expiration of the statute of limitations.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We recognize interest and penalties related to uncertain tax positions in the income tax provision.&#160; We have accrued interest and
    penalties related to uncertain tax positions of $20 thousand and $19 thousand as of December 31, 2021 and 2020, respectively.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We are subject to U.S. federal income tax as well as income tax of certain state and foreign jurisdictions.&#160; We have substantially
    concluded all U.S. federal income tax, state and local, and foreign tax matters through 2017.&#160; However, our federal tax returns for the years 2018 through 2021 remain open to examination. Various state and foreign tax jurisdiction tax years remain open
    to examination as well, though we believe that any additional assessment would be immaterial to the Consolidated Financial Statements.&lt;/div&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_b61312c964cb467286cd92aa5f7655ca">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The components of the income tax benefit are as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Current:&lt;/div&gt;
        &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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;26&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,141&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;State&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;51&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;17&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Foreign&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(48&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px;" 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;79&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,172&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred:&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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,086&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(483&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;State&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(62&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(36&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Foreign&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;152&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: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,150&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(367&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Income tax benefit&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,071&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,539&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_2036a8e46f1641f9bf4c03b4508d6359"
      unitRef="U001">26000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_95d45f9296314278ae2ff005c24fd012"
      unitRef="U001">-2141000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_343fb1f8a6fe4a2b912ae016576248f6"
      unitRef="U001">51000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_5301c06c08e74a9cbd7689082bf4becc"
      unitRef="U001">17000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_4e81d74d439e4439ba7031a5e97d67ab"
      unitRef="U001">2000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_4c9125d6f49c48b597fa96153c4be0c5"
      unitRef="U001">-48000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_d815ce00fe434a0cb6171c31a849e5d3"
      unitRef="U001">79000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_f0548f0a39174523b90374c7b408ad1c"
      unitRef="U001">-2172000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_a9ecf342f07b4b6bb4d501cdd1252d5a"
      unitRef="U001">-2086000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_a2b884195254430bbdd574edb58cba2b"
      unitRef="U001">-483000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_3a28d277ca5c43f7a7e7911d7347b7ac"
      unitRef="U001">-62000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_e43a42386ad444b586bd7e438a1813bb"
      unitRef="U001">-36000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_e828246ba6f34286baed84131ac3ecd0"
      unitRef="U001">-2000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_9f9cc403ba51444a8669807be5012d47"
      unitRef="U001">152000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_bedb0f2f8e1f49cc97a9b70b50c09925"
      unitRef="U001">-2150000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_4bfc5e34f8914050aae79191e657746c"
      unitRef="U001">-367000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_93d8e46c25bc4d899e560d353260ff8c"
      unitRef="U001">-2071000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_124d14cce1d44e26a1b35a1e78b8bb6c"
      unitRef="U001">-2539000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_d9ecbd78fb9c4f85baa9075b7ef9019a"
      unitRef="U007">0.333</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_67707c0d504b4042a233249ff3b89876"
      unitRef="U007">0.311</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20170101to20171231"
      decimals="2"
      id="Fact_21d52b3bcf9847baaa2330120d8968c6"
      unitRef="U007">0.34</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_2386bc32d901475795639ad9ede03e53"
      unitRef="U007">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:OperatingLossCarryforwards
      contextRef="c20211231_IncomeTaxAuthorityAxis_DomesticCountryMember"
      decimals="-5"
      id="Fact_8273e21bc0f149909f8a081a65189f74"
      unitRef="U001">2000000.0</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="c20211231_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember"
      decimals="-3"
      id="Fact_6a3d18b46e3e487b97a14f0e5bc09061"
      unitRef="U001">78000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="c20211231_TaxCreditCarryforwardAxis_ResearchMember"
      decimals="-3"
      id="Fact_11756a0d9e8c49dc9263fbfb31a6ecbe"
      unitRef="U001">901000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="c20211231_IncomeTaxAuthorityAxis_StateAndLocalJurisdictionMember"
      decimals="-3"
      id="Fact_62ff675ce3f94013affbc60539306fae"
      unitRef="U001">0</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_605936305474420e830611155db1d333"
      unitRef="U001">404000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_2e854583b76a45d0b15a69c9dd6db44f"
      unitRef="U001">468000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_623cf2a1daa64270a86c67eb451df3ce">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred income taxes arise from temporary differences between the tax basis of assets and liabilities and their reported amounts in the Consolidated
    Financial Statements.&#160; Our deferred tax assets and liabilities were comprised of the following:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred tax assets:&lt;/div&gt;
        &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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal net operating losses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,976&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Foreign net operating losses&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;624&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;563&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Depreciation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;306&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;302&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Inventory reserves&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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%; 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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;719&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred revenue&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;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;&#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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Warranty reserve&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;22&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;31&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock compensation expense&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;796&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;731&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other accrued compensation&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;308&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;388&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;R&amp;amp;D credit carryforward&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;901&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;460&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other liabilities and reserves&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;250&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;394&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 27pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross deferred tax assets&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,917&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,635&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 27pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Valuation allowance&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(733&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(659&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -18pt; margin-left: 45pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net deferred tax assets&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,184&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,976&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" 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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Deferred tax liabilities:&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;&#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="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: 76%; padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;43&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;37&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: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 36pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net deferred tax liabilities&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;43&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;37&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total net deferred tax assets&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,141&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,939&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsDomestic
      contextRef="c20211231"
      decimals="-3"
      id="Fact_16abadb0f1294b1f970a723503c7a6a2"
      unitRef="U001">1976000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsDomestic>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsDomestic
      contextRef="c20201231"
      decimals="-3"
      id="Fact_53f200a5d0024caf83e4585e5bf6d941"
      unitRef="U001">0</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsDomestic>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign
      contextRef="c20211231"
      decimals="-3"
      id="Fact_88edf2c61b3546b59016c35a82b1501c"
      unitRef="U001">624000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign
      contextRef="c20201231"
      decimals="-3"
      id="Fact_2ce8eadea0144f5c8efeca1a26d4f9bf"
      unitRef="U001">563000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsForeign>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e8ba781de59a4fe7afff21db820e3381"
      unitRef="U001">306000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements
      contextRef="c20201231"
      decimals="-3"
      id="Fact_a7b4c5b69803432bbbd430b0855c6b80"
      unitRef="U001">302000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsLegalSettlements>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="c20211231"
      decimals="-3"
      id="Fact_2bfcfd9994e14c7fa32858ce3baddcfc"
      unitRef="U001">710000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory
      contextRef="c20201231"
      decimals="-3"
      id="Fact_f34b49bfd4a84cd38f897b50e31cc593"
      unitRef="U001">719000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e152ed207a1c4f7a8f8f8e6ed6d12294"
      unitRef="U001">24000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxAssetsDeferredIncome
      contextRef="c20201231"
      decimals="-3"
      id="Fact_20080afb7cfb45eeb9063edd51d5293c"
      unitRef="U001">47000</us-gaap:DeferredTaxAssetsDeferredIncome>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
      contextRef="c20211231"
      decimals="-3"
      id="Fact_247a2ce379e14881b2a9efa0751caa24"
      unitRef="U001">22000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves
      contextRef="c20201231"
      decimals="-3"
      id="Fact_cc6b0011956c4ec3822fa1fefa9b45cc"
      unitRef="U001">31000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsWarrantyReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="c20211231"
      decimals="-3"
      id="Fact_3a1365cd768a4dc58913edb95ef73754"
      unitRef="U001">796000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="c20201231"
      decimals="-3"
      id="Fact_228807ecf1ee49179377e6b54c9da122"
      unitRef="U001">731000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
      contextRef="c20211231"
      decimals="-3"
      id="Fact_39ae37214c1d450cb695314f03d5928d"
      unitRef="U001">308000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
      contextRef="c20201231"
      decimals="-3"
      id="Fact_d984ef766ec54eccb3e03bda1ca61dc0"
      unitRef="U001">388000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="c20211231"
      decimals="-3"
      id="Fact_faeb8041d5254e48ab65f9e32b5a0211"
      unitRef="U001">901000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch
      contextRef="c20201231"
      decimals="-3"
      id="Fact_7c2037576786491faffb0b6a7d83cbcf"
      unitRef="U001">460000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwardsResearch>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="c20211231"
      decimals="-3"
      id="Fact_022d50737d954193bdfa4b8e8c600692"
      unitRef="U001">250000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="c20201231"
      decimals="-3"
      id="Fact_a0aeabd894fc459c897bcb8b4dd81770"
      unitRef="U001">394000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="c20211231"
      decimals="-3"
      id="Fact_5a6568a0e93f467c864f10fec24ed765"
      unitRef="U001">5917000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="c20201231"
      decimals="-3"
      id="Fact_dfbb9f7b89d7476faedf437f90a7451f"
      unitRef="U001">3635000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="c20211231"
      decimals="-3"
      id="Fact_e2ec8936c16c4b49bd405fbc676f9344"
      unitRef="U001">733000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="c20201231"
      decimals="-3"
      id="Fact_e3d4b76e478447dc96af1a9e951e1127"
      unitRef="U001">659000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_6ba1b36eaefc48f8bace56895ae8547a"
      unitRef="U001">5184000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_b6aa56ca0b2343db94ce5695b26048ac"
      unitRef="U001">2976000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="c20211231"
      decimals="-3"
      id="Fact_bd1cff22b6d843a59ae370875afe1fea"
      unitRef="U001">43000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="c20201231"
      decimals="-3"
      id="Fact_a421d3416220436fbe281ff02d00ef6a"
      unitRef="U001">37000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilities
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4733597541114f6eb29d30185eeb3ff9"
      unitRef="U001">43000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities
      contextRef="c20201231"
      decimals="-3"
      id="Fact_ec0fa876b4ac41b7acfb7bbdb507524c"
      unitRef="U001">37000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_dfd25beab9a44c60bbfdc2bd812172cb"
      unitRef="U001">5141000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_6680b54e4b5743958a34371d7ae0b0d1"
      unitRef="U001">2939000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:SummaryOfValuationAllowanceTextBlock
      contextRef="c20210101to20211231"
      id="Text_ee4413c3e26a485394a68ad2b5355c39">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;As of December 31, 2021, a valuation allowance
    of $733 thousand has been established for foreign net operating loss carryforwards that are not expected to be used. The following table
    summarizes the activity recorded in the valuation allowance on the deferred tax assets:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;659&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;444&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Additions charged to income tax provision&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;74&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;215&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;733&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;659&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:SummaryOfValuationAllowanceTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="c20211231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_b698a9eae4d640b2811fb11fcb57880d"
      unitRef="U001">733000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="c20201231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_2c731a8b0e1a4057b9fe7b43cd15b109"
      unitRef="U001">659000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="c20191231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_3afaa3339c194866b995a70f35dc2bbb"
      unitRef="U001">444000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="c20210101to20211231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_c96fd23149cf46319efd464890de4128"
      unitRef="U001">74000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="c20200101to20201231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_6b6e98f0d27d4220bc0b95dc11a3e286"
      unitRef="U001">215000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="c20211231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_9c0aedd2d3664800a8c014d899750c65"
      unitRef="U001">733000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="c20201231_ValuationAllowancesAndReservesTypeAxis_ValuationAllowanceOperatingLossCarryforwardsMember"
      decimals="-3"
      id="Fact_6e39d5d18d5543fca06e7f6c847ae9a9"
      unitRef="U001">659000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_8fd97212ddee4af293ac0c58bf87ba7f">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Differences between the U.S. statutory federal income tax rate and our effective income tax rate are analyzed below:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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="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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Federal statutory rate&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;21.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;21.0&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;PPP loan forgiveness&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7.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;&#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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;R&amp;amp;D credit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock award excess tax benefit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;State income taxes, net of federal income taxes&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;U.S. corporate tax rate change&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9.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;&#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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Business meals and entertainment&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Miscellaneous permanent items&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Uncertain tax positions&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.4&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Stock option cancellations&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.6&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Valuation allowance and tax accruals&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1.2&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2.6&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Other&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.3&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Effective tax rate&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;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;33.3&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&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;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;31.1&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_c27e506ae06942bb95196c2c8c14b392"
      unitRef="U007">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_697628854cbf4cf79f7036693c03dfd5"
      unitRef="U007">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsExtraterritorialIncomeExclusion
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_d68268f9b172477b9497325cddbffaaa"
      unitRef="U007">-0.074</us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsExtraterritorialIncomeExclusion>
    <us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsExtraterritorialIncomeExclusion
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_4f0f94540a6740deb181a456421a16ac"
      unitRef="U007">0</us-gaap:EffectiveIncomeTaxRateReconciliationDeductionsExtraterritorialIncomeExclusion>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_61285873dfcf4e5c9475e037e9a48d6f"
      unitRef="U007">-0.071</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_5faaa5ddfda54440906c7a22ead561b8"
      unitRef="U007">-0.042</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCreditsResearch>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_2aabf4d620ed4d7183ffb68748d41fbe"
      unitRef="U007">0.003</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_78befc5f9d8941d7a1fa7f3056b6a2ea"
      unitRef="U007">-0.003</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_e4fc2ac783e241ceafadafbaa33b07ca"
      unitRef="U007">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_48b0a96329bf4d4e954a0e01a50392d0"
      unitRef="U007">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_105a0258e7d54ca8944ec95cccdd7725"
      unitRef="U007">0</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_fd2a462f7d0241cb91b8a57f5e4a8116"
      unitRef="U007">0.095</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_b3766e30d77f409bb7edf52c8405b9d5"
      unitRef="U007">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseMealsAndEntertainment>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseMealsAndEntertainment
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_b43694a9b111476dac61eaa557bf97fd"
      unitRef="U007">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseMealsAndEntertainment>
    <tact:EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsPercent
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_27d2de1061e242efbb1855d2d0e23a26"
      unitRef="U007">-0.003</tact:EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsPercent>
    <tact:EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsPercent
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_2faac2b8b3864664ad0c88e2521463dd"
      unitRef="U007">0</tact:EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_11fcdd9a2103421189354894b8a6b985"
      unitRef="U007">0.004</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_4fdd3d2901a04ddcb27500a4f7f96654"
      unitRef="U007">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationTaxContingencies>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_29d5ab4035ec4909a179751cd516b2f1"
      unitRef="U007">-0.006</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_451e841a78be4a94ac7eb7c25f11bf52"
      unitRef="U007">-0.005</us-gaap:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseShareBasedCompensationCost>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_7a43d578393f435e867330f188869430"
      unitRef="U007">-0.012</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_876e978cc2c34470b2697d41ee6b4893"
      unitRef="U007">-0.026</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_2e4b4328e37d4373b2ec9196599be0df"
      unitRef="U007">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_466341e60db24871b4758d2704b19a28"
      unitRef="U007">-0.003</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20210101to20211231"
      decimals="3"
      id="Fact_fabf5bb12ee245b2adfdb62b7c1600de"
      unitRef="U007">0.333</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20200101to20201231"
      decimals="3"
      id="Fact_cbb530500d6e483eb38e0b1f4c401197"
      unitRef="U007">0.311</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:SummaryOfPositionsForWhichSignificantChangeInUnrecognizedTaxBenefitsIsReasonablyPossibleTextBlock
      contextRef="c20210101to20211231"
      id="Text_716c1805467e49bea464193a16518b0f">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We had $144 thousand and $121 thousand of total gross unrecognized tax benefits at December 31, 2021
    and 2020, respectively that, if recognized, would favorably affect the effective income tax rate in any future periods.&#160; We are not aware of
    any events that could occur within the next twelve months that could cause a significant change in the total amount of unrecognized tax benefits.&#160; A tabular reconciliation of the gross amounts of unrecognized tax benefits at the beginning and end of
    the year is as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31,&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, beginning of period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;121&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;107&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Tax positions taken during the current period&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;47&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;41&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Lapse of statute of limitations&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(24&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(27&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Balance, end of period&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;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: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;121&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;/tr&gt;


&lt;/table&gt;
</us-gaap:SummaryOfPositionsForWhichSignificantChangeInUnrecognizedTaxBenefitsIsReasonablyPossibleTextBlock>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="c20211231"
      decimals="-3"
      id="Fact_0f7e36bc85a54ec69f3d1e18b87d2dc4"
      unitRef="U001">144000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="c20201231"
      decimals="-3"
      id="Fact_56c5ed7316f34096b1e4c95909467f51"
      unitRef="U001">121000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20201231"
      decimals="-3"
      id="Fact_8f2b1b5c1eb94a1b97401ff3a48187d5"
      unitRef="U001">121000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20191231"
      decimals="-3"
      id="Fact_604526f3b95f43f2b4e9be9940533b33"
      unitRef="U001">107000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_05627d71a55c4e0f8c31182fca9ac23f"
      unitRef="U001">47000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
    <us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_fda2dcbab2794f7a89da9b85ef286af4"
      unitRef="U001">41000</us-gaap:UnrecognizedTaxBenefitsPeriodIncreaseDecrease>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_f525411033a440ceb278f80895b16c7f"
      unitRef="U001">24000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_acff6ec42fc24dc88ec2ecd84b5a3463"
      unitRef="U001">27000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20211231"
      decimals="-3"
      id="Fact_b127f9cda46d4561828782178ea3a790"
      unitRef="U001">144000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20201231"
      decimals="-3"
      id="Fact_4537ed9a74904e2eb9cefa2ad6534a20"
      unitRef="U001">121000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible
      contextRef="c20211231"
      decimals="-3"
      id="Fact_74feac78af694c46a668bf67bc3fc4c2"
      unitRef="U001">28000</us-gaap:DecreaseInUnrecognizedTaxBenefitsIsReasonablyPossible>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="c20211231"
      decimals="-3"
      id="Fact_28cba6a8d6d54b0db41493ec36ff8231"
      unitRef="U001">144000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued
      contextRef="c20211231"
      decimals="-3"
      id="Fact_abbd5a6b117b442daeef52f308bf7e23"
      unitRef="U001">20000</us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued>
    <us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued
      contextRef="c20201231"
      decimals="-3"
      id="Fact_d4deaf4cef524ef4a3a500b87470bad7"
      unitRef="U001">19000</us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="c20210101to20211231"
      id="Text_e8296c5992864d07bfb0bb75feff0aeb">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;12. Earnings per share&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Earnings per share was computed as follows (in thousands, except per share amounts):&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(4,145&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(5,630&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" 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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Shares:&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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,298&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,827&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Add:&#160; Dilutive effect of outstanding equity awards as determined by the treasury stock
              method&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,298&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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,827&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" 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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss per common share:&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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Basic&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.45&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.72&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Diluted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.45&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.72&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options,
    restricted stock units and performance stock awards, when the average market price of the common stock is lower than the exercise price of the related stock award during the period.&#160; These outstanding stock awards are not included in the computation of
    diluted earnings per share because the effect would be anti-dilutive.&#160; Furthermore, in periods when a net loss is reported, such as 2021 and 2020, basic and diluted net loss per common share are calculated using the same method.&#160; Anti-dilutive stock
    awards excluded from the computation of earnings per dilutive share were 391,000 and 1,284,000 at December 31, 2021 and 2020, respectively.&lt;/div&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_9c1248e04f7c415cad93855f7da486ad">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Earnings per share was computed as follows (in thousands, except per share amounts):&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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%; padding-bottom: 4px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(4,145&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(5,630&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" 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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Shares:&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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,298&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,827&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Add:&#160; Dilutive effect of outstanding equity awards as determined by the treasury stock
              method&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,298&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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,827&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" 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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss per common share:&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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Basic&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.45&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.72&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; text-indent: -9pt; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Diluted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.45&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.72&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_b1cfb37121fd40bdaf3e26a10ce21675"
      unitRef="U001">-4145000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_81cf0afa10a946aca6e44d7a84cd9c11"
      unitRef="U001">-5630000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_154aa0b8975248c290ef4c3d1a75e0c7"
      unitRef="U002">9298000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_367018237bb14b93b3e3f1febb01d66f"
      unitRef="U002">7827000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_0c315bd2a5554a959f4902d78a33558f"
      unitRef="U002">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_dda2d87fa2414f6dabb2ac336ec1bbdf"
      unitRef="U002">0</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_787dd2d6df0c4c4bbfd01980f5641676"
      unitRef="U002">9298000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_a9e7575f75ca45379d06482ce02c62b5"
      unitRef="U002">7827000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_53940854cf194701bafd82f668ab692b"
      unitRef="U003">-0.45</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20200101to20201231"
      decimals="2"
      id="Fact_10aaee96312c4982904e39e8d613482b"
      unitRef="U003">-0.72</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20210101to20211231"
      decimals="2"
      id="Fact_d9dfd61fa13b4eb4b5517fb65b141792"
      unitRef="U003">-0.45</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20200101to20201231"
      decimals="2"
      id="Fact_882e8c06cbdf45cda4ede34d1c4af1c1"
      unitRef="U003">-0.72</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20210101to20211231_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="0"
      id="Fact_eb6c651e329b4cf4b8b3e9af24fcc077"
      unitRef="U002">391000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c20200101to20201231_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_StockCompensationPlanMember"
      decimals="0"
      id="Fact_d826c64daa344577a612a87653d78111"
      unitRef="U002">1284000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:TreasuryStockTextBlock
      contextRef="c20210101to20211231"
      id="Text_afa424e1d2f745359b3dc0cccf9a8c42">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;13. Stock repurchase program&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;We use the cost method to account for treasury stock purchases, under which the price paid for the stock is charged to the treasury
    stock account.&#160; Repurchases of our common stock are accounted for as of the settlement date.&#160; During 2021 and 2020, we did not repurchase any shares of
    our common stock.&#160; From January 1, 2005 through December 31, 2019, we repurchased a total of 4,044,842 shares of common stock for $32.1 million, at an average price of $7.94 per
    share.&lt;/div&gt;
</us-gaap:TreasuryStockTextBlock>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="c20210101to20211231"
      decimals="INF"
      id="Fact_12b02c1a237046b2932fd4f87c05738d"
      unitRef="U002">0</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="c20200101to20201231"
      decimals="INF"
      id="Fact_ed7a3c87de004551be8ac3e9c91f44db"
      unitRef="U002">0</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="c20050101to20211231"
      decimals="0"
      id="Fact_e349c2bf019a458daa7e361cab3f0ac4"
      unitRef="U002">4044842</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="c20050101to20211231"
      decimals="-5"
      id="Fact_9c01741e0f5449f89cb7a9ae545dda2f"
      unitRef="U001">32100000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="c20050101to20211231"
      decimals="2"
      id="Fact_03bc2553e1e8434389436978b6ba5d90"
      unitRef="U003">7.94</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="c20210101to20211231"
      id="Text_939bef70c0d64540892a844d8725a94a">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;14. Geographic area information&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Information regarding our operations by geographic area is contained in the following table.&#160; These amounts in the geographic area table are
    based on the location of the customer and asset.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net sales:&lt;/div&gt;
        &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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;32,400&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;24,733&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,986&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,862&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;39,386&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;30,595&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;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" 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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Fixed assets, net:&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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,770&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,079&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;914&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;871&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,684&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,950&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;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Sales to international customers were 18%
    and 19% of total sales in 2021 and
    2020, respectively.&#160; Sales to Europe represented 53%
    and 45%, sales to the Pacific Rim (which includes Australia and Asia) represented 35% and 45%, and sales to Canada represented 11% and 8%&#160; of total international sales in 2021 and 2020, respectively.&#160; International
    long-lived assets consist of net fixed assets located at our foreign subsidiary in the UK as well as our contract manufacturers in China, Thailand, Malaysia and Mexico.&lt;/div&gt;
</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_13905b88d7334f81897864d4c40bab37">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Information regarding our operations by geographic area is contained in the following table.&#160; These amounts in the geographic area table are
    based on the location of the customer and asset.&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net sales:&lt;/div&gt;
        &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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;32,400&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;24,733&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;6,986&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,862&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;39,386&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;30,595&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;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" 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;&#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="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: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Fixed assets, net:&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;&#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="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: 76%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;United States&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,770&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;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,079&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%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;International&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;914&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;871&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total&lt;/div&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,684&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="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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,950&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;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsByGeographicalAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_7553ae93ee5d47f48aaf4a099542106d"
      unitRef="U001">32400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_c9383106ff0d43dfa5bc7aa8e24892d6"
      unitRef="U001">24733000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_57da01f0d9e8421ba044190bdc775c03"
      unitRef="U001">6986000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_b0e1f385ea8a4a9f8a2e310202226624"
      unitRef="U001">5862000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20211231"
      decimals="-3"
      id="Fact_ab7e66a3a62649f68acac2f44331fa9c"
      unitRef="U001">39386000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_1b0ac002758348b0b55760f7627f5d28"
      unitRef="U001">30595000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_478770630e284ed48df2c90dc3085778"
      unitRef="U001">1770000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_8bafe332c2ae430594e3343bdeeea577"
      unitRef="U001">1079000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20211231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_ed0ed41f16b442bd8876780450e0def4"
      unitRef="U001">914000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20201231_ConsolidationItemsAxis_ReportableGeographicalComponentsMember_StatementGeographicalAxis_InternationalMember"
      decimals="-3"
      id="Fact_6e6aecc46a364affbc5e2c29ee01b51d"
      unitRef="U001">871000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20211231"
      decimals="-3"
      id="Fact_77ea1ae7ca5f48978711e1054b0b87a2"
      unitRef="U001">2684000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20201231"
      decimals="-3"
      id="Fact_b9f2fded5c02401c9ad28d7bc354b070"
      unitRef="U001">1950000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_InternationalMember"
      decimals="2"
      id="Fact_5f9b1d9c39cf46c092774c574a06dfee"
      unitRef="U007">0.18</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_InternationalMember"
      decimals="2"
      id="Fact_0710ab96b76245c59e316c284b4a3d54"
      unitRef="U007">0.19</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_EuropeMember"
      decimals="2"
      id="Fact_7dd6f51cd832440d82db61314a680a58"
      unitRef="U007">0.53</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_EuropeMember"
      decimals="2"
      id="Fact_7901c79b8c98406c9ee9aedec2729c80"
      unitRef="U007">0.45</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_PacificRimMember"
      decimals="2"
      id="Fact_e3834217e41f4765a919291972bfee85"
      unitRef="U007">0.35</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_PacificRimMember"
      decimals="2"
      id="Fact_fa35db1c777e46d2a2ec6437833784de"
      unitRef="U007">0.45</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20210101to20211231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_CA"
      decimals="2"
      id="Fact_945b2a15fee54ed482983d80b75c92bb"
      unitRef="U007">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20200101to20201231_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_StatementGeographicalAxis_CA"
      decimals="2"
      id="Fact_0119130565e64697a56b8adf55007343"
      unitRef="U007">0.08</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="c20210101to20211231"
      id="Text_5a7dc2c2b1cb4061a483a480c2de1e99">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;15. Leases&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Operating lease expense was $&lt;/span&gt;1.0&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; million for both years ended December 31, &lt;/span&gt;2021&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; and &lt;/span&gt;2020&lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt; and is reported as &lt;/span&gt;&#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 Consolidated Statements of Operations.&#160; &lt;span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"&gt;Operating costs include short-term lease costs, which were
      immaterial during the period.&lt;/span&gt;&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Operating cash outflows from leases&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;982&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,040&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 style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following summarizes additional information related to our leases as of December 31, 2021:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Weighted average remaining lease term (in years)&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3.5&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.9&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Weighted average discount rate&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.4&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.1&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="text-align: left; line-height: 13.7pt; font-family: 'Times New Roman', Times, serif; font-size: 12pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The maturity of the Company&#x2019;s operating lease liabilities as of December 31, 2021 are as follows (in thousands):&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 78%;" valign="bottom"&gt; &lt;/td&gt;

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

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31, 2021&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; 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: 78%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2022&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 19%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;886&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: 78%;" valign="bottom"&gt;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2023&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: 19%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;721&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: 78%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2024&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: 19%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;721&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: 78%;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2025&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: 19%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;426&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: 78%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2026&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" 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); 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: 19%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;23&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); 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: 78%;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total undiscounted lease payments&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: 19%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,777&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: 78%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Less imputed interest&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: 19%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;207&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 78%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total lease 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 19%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,570&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;/tr&gt;


&lt;/table&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseExpense
      contextRef="c20200101to20201231"
      decimals="-5"
      id="Fact_b48dcdc0c53045f3b0c0d1ce099f7a26"
      unitRef="U001">1000000.0</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="c20210101to20211231"
      decimals="-5"
      id="Fact_a3b5f98bc29246139a3f0a4cd78e2cbf"
      unitRef="U001">1000000.0</us-gaap:OperatingLeaseExpense>
    <tact:LesseeOperatingLeaseSupplementalDisclosureForCashFlowsTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_4eab533f0844421ebd1a6dd3b33f2c58">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Operating cash outflows from leases&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;982&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;1,040&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="c20210101to20211231"
      decimals="-3"
      id="Fact_e752242cfff949568cc4847f13d1339c"
      unitRef="U001">982000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="c20200101to20201231"
      decimals="-3"
      id="Fact_3c1e12d3b44f468cbd677fd06466d5f0"
      unitRef="U001">1040000</us-gaap:OperatingLeasePayments>
    <tact:LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_5468d94eba274b49957e07039b061b03">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The following summarizes additional information related to our leases as of December 31, 2021:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&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="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Year Ended December 31,&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; &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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020&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 style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Weighted average remaining lease term (in years)&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3.5&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 style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.9&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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Weighted average discount rate&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.4&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4.1&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;%&lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</tact:LesseeOperatingLeaseLeaseTermAndDiscountRateTableTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20211231"
      id="Fact_bd30c1b5c1e942d0a0bd5b4e9e78da1e">P3Y6M</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="c20201231"
      id="Fact_33cce4dab8e74b4fbd33692ecf464a88">P4Y10M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="c20211231"
      decimals="3"
      id="Fact_ee9ce2bc31de4bfc84b8ee05655a8e37"
      unitRef="U007">0.044</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="c20201231"
      decimals="3"
      id="Fact_f136d887d1ed46a7805c34960aa3d55d"
      unitRef="U007">0.041</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_5506cde2ef1549d78d0c07d838263a31">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The maturity of the Company&#x2019;s operating lease liabilities as of December 31, 2021 are as follows (in thousands):&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; text-align: left; color: #000000; width: 100%;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; width: 78%;" valign="bottom"&gt; &lt;/td&gt;

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

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31, 2021&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; 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: 78%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2022&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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 19%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;886&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: 78%;" valign="bottom"&gt;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2023&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: 19%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;721&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: 78%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2024&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: 19%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;721&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: 78%;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2025&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: 19%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;426&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: 78%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2026&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" 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); 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: 19%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;23&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); 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: 78%;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total undiscounted lease payments&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: 19%;" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,777&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: 78%; padding-bottom: 2px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Less imputed interest&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: 19%; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;207&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;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 78%; padding-bottom: 4px;" valign="bottom"&gt;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Total lease 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="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;$&lt;/div&gt;
        &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 19%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
          &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,570&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;/tr&gt;


&lt;/table&gt;
</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="c20211231"
      decimals="-3"
      id="Fact_495f3682c8974f86a6f3171c369c552e"
      unitRef="U001">886000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="c20211231"
      decimals="-3"
      id="Fact_282b95cbac84471aa9e3396cc887d136"
      unitRef="U001">721000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="c20211231"
      decimals="-3"
      id="Fact_04b45ea3f97c4124b4accfa66bda1114"
      unitRef="U001">721000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="c20211231"
      decimals="-3"
      id="Fact_f216597341d94a9b816fc02d601d6476"
      unitRef="U001">426000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="c20211231"
      decimals="-3"
      id="Fact_93b1550216eb46a48f63ce05d316910d"
      unitRef="U001">23000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="c20211231"
      decimals="-3"
      id="Fact_4c600375184f4181b48f70881f7c7f7d"
      unitRef="U001">2777000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="c20211231"
      decimals="-3"
      id="Fact_037059865d4f410c8a2ec51451d8fe24"
      unitRef="U001">207000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="c20211231"
      decimals="-3"
      id="Fact_6e7229ebd5a44d0f8813425376c2435d"
      unitRef="U001">2570000</us-gaap:OperatingLeaseLiability>
    <us-gaap:QuarterlyFinancialInformationTextBlock
      contextRef="c20210101to20211231"
      id="Text_6292a32cc3244910975e2450fe89530b">
&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;16. Quarterly results of operations (unaudited)&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Our quarterly results of operations for 2021 and 2020 are as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Quarter Ended&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands, except per share amounts)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;March 31&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; white-space: nowrap;" 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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; white-space: nowrap;" 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;September 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; white-space: nowrap;" 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021:&lt;/div&gt;
        &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;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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net sales&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8,301&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,325&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,637&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,123&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross profit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,189&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,325&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,317&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,418&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net (loss) income&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,206&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;910&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(735&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net (loss) income per common share:&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;&#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="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="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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Basic&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.10&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.07&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Diluted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.09&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.07&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="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="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="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="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 style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020:&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;&#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="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="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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net sales&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,247&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,285&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,300&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,763&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross profit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,918&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,290&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,349&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,372&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(992&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,853&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(867&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,918&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss per common share:&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;&#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="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="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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Basic&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.13&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.22&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Diluted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.13&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.22&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="c20210101to20211231"
      id="Text_7a80c7e43ae9497f93a6904b54f21396">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Our quarterly results of operations for 2021 and 2020 are as follows:&lt;/div&gt;

&lt;div style="line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman', Times, serif; font-size: 9pt; 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="14" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Quarter Ended&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;
          &lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-style: italic;"&gt;(In thousands, except per share amounts)&lt;/div&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;" valign="bottom"&gt;
          &lt;div style="text-align: center; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;March 31&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; white-space: nowrap;" 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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; white-space: nowrap;" 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;September 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; white-space: nowrap;" 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; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;December 31&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;
          &lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2021:&lt;/div&gt;
        &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;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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net sales&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;8,301&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;9,325&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,637&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;11,123&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross profit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,189&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,325&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,317&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,418&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net (loss) income&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(2,206&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;910&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(735&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net (loss) income per common share:&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;&#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="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="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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Basic&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.10&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.07&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Diluted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;0.09&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.07&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &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="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="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="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="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 style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2020:&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;&#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="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="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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net sales&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;10,247&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;5,285&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,300&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="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; 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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;7,763&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: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Gross profit&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;4,918&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,290&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;3,349&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;2,372&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: 52%; background-color: #CCEEFF;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(992&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,853&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(867&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(1,918&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 9pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Net loss per common share:&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;&#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="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="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="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 style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Basic&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.13&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.22&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 52%;" valign="bottom"&gt;
          &lt;div style="line-height: 14.4pt;"&gt;
            &lt;div style="text-align: left; margin-left: 18pt; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;Diluted&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.13&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.25&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.11&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;(0.22&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 style="line-height: 14.4pt;"&gt;
            &lt;div style="line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;)&lt;/div&gt;
          &lt;/div&gt;
        &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210101to20210331"
      decimals="-3"
      id="Fact_3a2a55d1be604cd2b557f24e8de0bacb"
      unitRef="U001">8301000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210401to20210630"
      decimals="-3"
      id="Fact_61066b145f2a4c4c90b284692c896985"
      unitRef="U001">9325000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20210701to20210930"
      decimals="-3"
      id="Fact_ba171dae74f04c89bd429ce8388183d9"
      unitRef="U001">10637000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20211001to20211231"
      decimals="-3"
      id="Fact_67eac3a067fe47419fc70f0ad6454469"
      unitRef="U001">11123000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="c20210101to20210331"
      decimals="-3"
      id="Fact_3d91ebff951a46fa80746d7eff4ae6c7"
      unitRef="U001">3189000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20210401to20210630"
      decimals="-3"
      id="Fact_453c04824a664848a53dc70162715899"
      unitRef="U001">3325000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20210701to20210930"
      decimals="-3"
      id="Fact_2dd9061995924adab02542307d072e6f"
      unitRef="U001">4317000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20211001to20211231"
      decimals="-3"
      id="Fact_81bfda6315004099b346b13b754d5a07"
      unitRef="U001">4418000</us-gaap:GrossProfit>
    <us-gaap:NetIncomeLoss
      contextRef="c20210101to20210331"
      decimals="-3"
      id="Fact_f0ee19342c5e42c09908db496bb4a012"
      unitRef="U001">-2206000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210401to20210630"
      decimals="-3"
      id="Fact_21debfac4aa14fc4ae14dd21953e4d9c"
      unitRef="U001">-2114000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20210701to20210930"
      decimals="-3"
      id="Fact_d5fd5f5cf3414d319d27200be822e83e"
      unitRef="U001">910000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20211001to20211231"
      decimals="-3"
      id="Fact_e6f3f5165722416aa8aa43ceb9c03920"
      unitRef="U001">-735000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20210101to20210331"
      decimals="2"
      id="Fact_af165796a7184487a719eb1ae319264c"
      unitRef="U003">-0.25</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20210401to20210630"
      decimals="2"
      id="Fact_e532b65444cb42c29a0c9f82f2131307"
      unitRef="U003">-0.24</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20210701to20210930"
      decimals="2"
      id="Fact_b2a0da3caae4448f9d8c5f3ea57020bd"
      unitRef="U003">0.10</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20211001to20211231"
      decimals="2"
      id="Fact_80d298e334f140fd8b3ffc775571e320"
      unitRef="U003">-0.07</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20210101to20210331"
      decimals="2"
      id="Fact_bc22cf1c53c646f7a466519c84f6c3df"
      unitRef="U003">-0.25</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20210401to20210630"
      decimals="2"
      id="Fact_860164d1e9c64f08a4f0ba79b88e563e"
      unitRef="U003">-0.24</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20210701to20210930"
      decimals="2"
      id="Fact_c28cabee9f0542c08cc7a52be18d6ab6"
      unitRef="U003">0.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20211001to20211231"
      decimals="2"
      id="Fact_dc9b1fca9b004f72983c7fc5d793f6f1"
      unitRef="U003">-0.07</us-gaap:EarningsPerShareDiluted>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200101to20200331"
      decimals="-3"
      id="Fact_be186741ef8545568091deb021175cc9"
      unitRef="U001">10247000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200401to20200630"
      decimals="-3"
      id="Fact_556a494fc76249e0b2ff8d63b0bd8ed6"
      unitRef="U001">5285000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20200701to20200930"
      decimals="-3"
      id="Fact_1a3e2dba0d3648bfb62299835b8b03a5"
      unitRef="U001">7300000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20201001to20201231"
      decimals="-3"
      id="Fact_cef910c96f5f41d0b216ab722b41cc9a"
      unitRef="U001">7763000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="c20200101to20200331"
      decimals="-3"
      id="Fact_8f4f79b2167449a8bdc7b85fe18fc50b"
      unitRef="U001">4918000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20200401to20200630"
      decimals="-3"
      id="Fact_2fedad8be8f04200b5c5c4c3c1a1710c"
      unitRef="U001">2290000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20200701to20200930"
      decimals="-3"
      id="Fact_82ce42c2585947f5b78f1fe083852d25"
      unitRef="U001">3349000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20201001to20201231"
      decimals="-3"
      id="Fact_cbf92fd4bf2944bc8332d0e131ad81e5"
      unitRef="U001">2372000</us-gaap:GrossProfit>
    <us-gaap:NetIncomeLoss
      contextRef="c20200101to20200331"
      decimals="-3"
      id="Fact_b02f37519f00481197b15c98fd87b131"
      unitRef="U001">-992000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200401to20200630"
      decimals="-3"
      id="Fact_2b4414c18add4c8bb6fad3c84ee973ca"
      unitRef="U001">-1853000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20200701to20200930"
      decimals="-3"
      id="Fact_02cdcd398c2449c783f06fb5b34c7874"
      unitRef="U001">-867000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20201001to20201231"
      decimals="-3"
      id="Fact_b48057d4db5e45628f8de68327e2615d"
      unitRef="U001">-1918000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20200101to20200331"
      decimals="2"
      id="Fact_14c341d92ffb4cf0b415fa914580b2e4"
      unitRef="U003">-0.13</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20200401to20200630"
      decimals="2"
      id="Fact_35fe8fd5ebd64c84a61ba723bb1d2579"
      unitRef="U003">-0.25</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20200701to20200930"
      decimals="2"
      id="Fact_48ab818d6c4a4fd4b88b5bb4a14afb92"
      unitRef="U003">-0.11</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20201001to20201231"
      decimals="2"
      id="Fact_f2e7a3823d9647eb91463d559c740849"
      unitRef="U003">-0.22</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20200101to20200331"
      decimals="2"
      id="Fact_019fba4b865b4d4aaed8ab4e8b278b81"
      unitRef="U003">-0.13</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20200401to20200630"
      decimals="2"
      id="Fact_da4eb8cbfddc42a6b36b0235e8bebde4"
      unitRef="U003">-0.25</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20200701to20200930"
      decimals="2"
      id="Fact_9bbdc6a12d044abd9e03052444fbc526"
      unitRef="U003">-0.11</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20201001to20201231"
      decimals="2"
      id="Fact_78ed1abb602a4daabce8b93197930576"
      unitRef="U003">-0.22</us-gaap:EarningsPerShareDiluted>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="c20210101to20211231"
      id="Text_7a0238212f9f45698df40ad2fc23f0c5">
&lt;div style="text-align: justify; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt; font-weight: bold;"&gt;17. Subsequent events&lt;/div&gt;

&lt;div style="text-align: justify; line-height: 10.25pt;"&gt;&lt;br/&gt;
  &lt;/div&gt;

&lt;div style="text-align: left; line-height: 10.25pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"&gt;The Company has evaluated all events or transactions that occurred up to the date the consolidated financial statements were available to
    issue.&#160; Based upon this review, the Company did not identify any subsequent events that would have required adjustment or disclosure in the consolidated financial statements.&lt;/div&gt;
</us-gaap:SubsequentEventsTextBlock>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#Fact_2200dbb582a34135a33a33e7991a39fc"
          xlink:label="Fact_2200dbb582a34135a33a33e7991a39fc"
          xlink:type="locator"/>
        <link:footnote id="Foot_d955d8fd57964b2cbb978471388690e9" xlink:label="Foot_d955d8fd57964b2cbb978471388690e9" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">weighted-average contractual remaining term in years</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_2200dbb582a34135a33a33e7991a39fc"
          xlink:to="Foot_d955d8fd57964b2cbb978471388690e9"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_01fe42f5d6f34989a866fbd5509a91ea"
          xlink:label="Fact_01fe42f5d6f34989a866fbd5509a91ea"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_01fe42f5d6f34989a866fbd5509a91ea"
          xlink:to="Foot_d955d8fd57964b2cbb978471388690e9"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_40d1567dd34c48a8b2ddc99b368df7e7"
          xlink:label="Fact_40d1567dd34c48a8b2ddc99b368df7e7"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_40d1567dd34c48a8b2ddc99b368df7e7"
          xlink:to="Foot_d955d8fd57964b2cbb978471388690e9"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_4d318218b4c8419da5729ae5d3a44d0d"
          xlink:label="Fact_4d318218b4c8419da5729ae5d3a44d0d"
          xlink:type="locator"/>
        <link:footnote id="Foot_02c9893d755d46e09c2c806bd0739d14" xlink:label="Foot_02c9893d755d46e09c2c806bd0739d14" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">weighted average exercise price per share</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_4d318218b4c8419da5729ae5d3a44d0d"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_7fa9fff2f815438785e751a7709e7b83"
          xlink:label="Fact_7fa9fff2f815438785e751a7709e7b83"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_7fa9fff2f815438785e751a7709e7b83"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_341af3cccf6b4c90b6dacfd466c2a72a"
          xlink:label="Fact_341af3cccf6b4c90b6dacfd466c2a72a"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_341af3cccf6b4c90b6dacfd466c2a72a"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_11f7c7940cb447f4be4b89111a161e61"
          xlink:label="Fact_11f7c7940cb447f4be4b89111a161e61"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_11f7c7940cb447f4be4b89111a161e61"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_86c7680febb546969024d9eb2d4b8462"
          xlink:label="Fact_86c7680febb546969024d9eb2d4b8462"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_86c7680febb546969024d9eb2d4b8462"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_49be8004ba664c0eaf328ac4dc33e44c"
          xlink:label="Fact_49be8004ba664c0eaf328ac4dc33e44c"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_49be8004ba664c0eaf328ac4dc33e44c"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_46445371553641de90936e45fc92e64c"
          xlink:label="Fact_46445371553641de90936e45fc92e64c"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_46445371553641de90936e45fc92e64c"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_eda0294a1e184539a4e55e0cc64a32e4"
          xlink:label="Fact_eda0294a1e184539a4e55e0cc64a32e4"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_eda0294a1e184539a4e55e0cc64a32e4"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_58c63cc0cfda4df393fec3b461f57817"
          xlink:label="Fact_58c63cc0cfda4df393fec3b461f57817"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_58c63cc0cfda4df393fec3b461f57817"
          xlink:to="Foot_02c9893d755d46e09c2c806bd0739d14"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_f42cd3a3f3ca4efcab1a34623971b4b0"
          xlink:label="Fact_f42cd3a3f3ca4efcab1a34623971b4b0"
          xlink:type="locator"/>
        <link:footnote id="Foot_42b55853fb414ccdba8ab0b20970caa0" xlink:label="Foot_42b55853fb414ccdba8ab0b20970caa0" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">weighted average grant stock price per share</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_f42cd3a3f3ca4efcab1a34623971b4b0"
          xlink:to="Foot_42b55853fb414ccdba8ab0b20970caa0"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_4532d7bb5d5e49a59bc227be7b49e3c3"
          xlink:label="Fact_4532d7bb5d5e49a59bc227be7b49e3c3"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_4532d7bb5d5e49a59bc227be7b49e3c3"
          xlink:to="Foot_42b55853fb414ccdba8ab0b20970caa0"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_fbd2499553ba4833a79eeb4cc73d1d0d"
          xlink:label="Fact_fbd2499553ba4833a79eeb4cc73d1d0d"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_fbd2499553ba4833a79eeb4cc73d1d0d"
          xlink:to="Foot_42b55853fb414ccdba8ab0b20970caa0"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_3c1bc3bf75ae42809b901affb2e39d83"
          xlink:label="Fact_3c1bc3bf75ae42809b901affb2e39d83"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_3c1bc3bf75ae42809b901affb2e39d83"
          xlink:to="Foot_42b55853fb414ccdba8ab0b20970caa0"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_a9c83316b680472f8697b2f43948f41d"
          xlink:label="Fact_a9c83316b680472f8697b2f43948f41d"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_a9c83316b680472f8697b2f43948f41d"
          xlink:to="Foot_42b55853fb414ccdba8ab0b20970caa0"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_3f635a049bd440c699554704b596c0f4"
          xlink:label="Fact_3f635a049bd440c699554704b596c0f4"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_3f635a049bd440c699554704b596c0f4"
          xlink:to="Foot_42b55853fb414ccdba8ab0b20970caa0"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
