<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:ftk="http://flotekind.com/20211231"
  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:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  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="ftk-20211231.xsd" xlink:type="simple"/>
    <context id="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="id4d7b9dd1b7f4b2e83f026f513bb8912_I20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="i9500ab7a2dd74a938ac277a295ee089f_I20220330">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2022-03-30</instant>
        </period>
    </context>
    <context id="i430bf94ffaa64339ba2128b52babcc80_I20220216">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-16</instant>
        </period>
    </context>
    <context id="iade1f432957c4a9a97933efdf47f68b2_D20150101-20150101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="ftk:DefinedContributionPlanMatchingContributionsAxis">ftk:DefinedContributionPlanMatchingRangeUpTo2PercentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2015-01-01</startDate>
            <endDate>2015-01-01</endDate>
        </period>
    </context>
    <context id="i16e34471193f479da34277f8de5df833_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id9ecf08b7084404eb856468a05796365_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i72cc69890bcb47e9ab534cec595acbc4_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i446ee9dca17040ba94d02de19a50ad15_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i65c3ad04c4704af291c37d70c75d05de_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i32c5353010a74e93a58ef3c0a62e7984_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="id4545a044a034bfa83699ad71af932b1_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i94b89a3460b44b1f870f8c814628789f_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i229b456971184301929b24b0af40b80c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="if126b4fb7f924b1c84650a3dcf30b45c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i4479172fdd4b44ee823d4c6714b14bf2_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i3c66e82c052a4103a61c361597766d0e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i23d35ce7ea99411ab6ae9e0c31cf5281_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="id008ef77fc7c400fa2cb9ac322c304e4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="iee260a5ff7754a4d9ad07aece59bb8fc_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i1db412219c26431185491f35741d32dc_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i4f999d5eaa0646b39e8c5854fb0abaa5_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i8267cf102f1e4dbe92c757fc3dab5df7_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i536477a857ac4ad989025a6c01a85f58_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="id766658aea6d4299b3d7f85456d7a580_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="ie744cbfa5d87496a84a088f56b93ec51_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i9589d230f2c84bd19e90ac038c23fea3_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i09ae2d696904415fbf4a7d2a01e859e2_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i863d52673bb8437ca42af9bda286d5c9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i43ae1b26d5554c84b921b1519bcb346f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i0fef54d40e2a445c8c0c43f1ce0295b3_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="ia6a5a4c549b641659402a37ef31bb15f_D20200401-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="ida27b6c7cc934bf8a3546021fe7b8601_I20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:PIPETransactionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-02</instant>
        </period>
    </context>
    <context id="ib621503945654b7ba4373612056fdcd8_D20220202-20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">ftk:PrivateInvestmentInPublicEquityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-02</startDate>
            <endDate>2022-02-02</endDate>
        </period>
    </context>
    <context id="iac7fe4c8b33d4ad585f1d323e0e224ad_D20220202-20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:ProFracAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShortTermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-02</startDate>
            <endDate>2022-02-02</endDate>
        </period>
    </context>
    <context id="i7bdce430a3984185b32005357627aeb2_I20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">ftk:ProFracServicesLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-02</instant>
        </period>
    </context>
    <context id="if5302ebbc00a48a9af67d44a74dd3721_D20220401-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ftk:WallerFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-04-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="ia9285826bd7b4f9e97acea9ed93f9205_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">ftk:TerpeneSupplyAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i070d310e8fdb4f4a9bb99d8c0947fe52_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ftk:BuildingsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ieeadb71f6a4745988d3f638feabddfcf_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ftk:BuildingsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i87257ff58454495a9b7773054b4499d0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <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="i4f8921874def44228d45d32df93afbd0_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <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="i4469e785899d4daaa375584f1dc85b41_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1e0db3ae98cb4c61b376e1b3660afdb2_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ia84d7d00c67c4833897e3d2524abaa1c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i7fafc4de9f0d4befb5c2cfbd9c6d8766_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i44e290d6efc14748b8c07bd2c07af6e8_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ftk:ComputerEquipmentandSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i60351c46f884487fbe6e6d0a26ba0c61_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ftk:ComputerEquipmentandSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i67f91720bcc245d8b36157b3d14ad2f9_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i40f9948c11d94440aa2d5063a23ee979_I20200518">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-18</instant>
        </period>
    </context>
    <context id="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-05-18</startDate>
            <endDate>2020-05-18</endDate>
        </period>
    </context>
    <context id="ib4db44d2fc904117a7e148bebe5a2db4_I20200518">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-18</instant>
        </period>
    </context>
    <context id="i10c94df7bbb641fbbb149c8ae67dad88_I20200518">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TechnologyBasedIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-18</instant>
        </period>
    </context>
    <context id="i35081b709f4043d49bb747993ee20c74_I20200518">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerListsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-05-18</instant>
        </period>
    </context>
    <context id="ib760ef0c2b29454c816d60922ef09ead_D20200401-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OperatingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="ife5669c8d37e4cb3ae26ff6f74c42151_D20200701-20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="ibbddc4f8503d44579cca21d2d8d1d30e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i1c80c74ba1444681b79e092850b8450a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i267138aaa2924a62bb736f44f81b3312_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="if63f2da8ace0413196b04463906192e6_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i23968f63865a4d279e68def95590af6c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i801190c569824e5fa9becfd47b9b5a84_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ib380e44124da484f90b151cf4fee7718_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="if16acfa45af34796906a5dc007e185d5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i2c880f064d444fcd9165e9b62e655022_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i81f904f11a6943ecbe3022927015d45d_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="if87abc0af9f04c57996399f0f05e577a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i20bc567a76324fa3a7f24ecdacd4f53b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LandImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ie2dd0e90871d41848c56896114784d00_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i4a0fc029ecf2464bbe6fe02e50effec2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i2097198cfca84a0e8f0a90f70669fc36_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="iaa098f634d0c4380a02703692c71c172_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i264cc023e0f345f4bad8aad6d90b0016_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic93cf752d93c47a78fb3cb750ccdabc0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i6ad7e936194d4f439d09f6f48610d8d6_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i79ba6e5649144b99a9daf502d09ab020_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:TransportationEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibc7ada1b0ad44cd9bb27a7de5bfb07be_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ftk:ComputerEquipmentandSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i3fba7451afef474f938e9861c0cc878b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">ftk:ComputerEquipmentandSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic9e8f7a2dfc14cbdbbdb47989a771ff1_I20210831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ftk:WarehouseFacilityInMonahansTexasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-08-31</instant>
        </period>
    </context>
    <context id="i074e0385bf2b4cd79a0ee18bbdf3f7f8_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ftk:WarehouseFacilityInMonahansTexasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i2ad7c00309b64158bca2a0f35a34ddfc_I20210731">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ftk:PropertyInWallerTexasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-31</instant>
        </period>
    </context>
    <context id="i5b0a289e44c64fd3a5e3edecf5fa9c61_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis">ftk:PropertyInWallerTexasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i296ff37407a3407e93455c46bb5d5927_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">us-gaap:ScenarioAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ie1186dc35b174c01a51e46f095c43397_I20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="i5914d5a35f214ce686da7a713d83fdb5_D20200401-20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="ia6826c242562407683f1859d6a910d99_D20200701-20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="ib479c9f4a39e4c65ac055fd357797191_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i609f53a39f854f6587153757f603bfc1_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ide45b6f9740b4346810885ee34a11bca_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">ftk:IntangibleAssetsInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i7363b5fa0290417a8f491a63d5e59dae_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">ftk:TrademarksAndBrandNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i598790d3a1e94f809d21153ef4e89f86_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i847a39cc884d4ac3a6ad666699fe7c12_D20200701-20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="i10873b95c38646059083a419e41435e9_D20200401-20200430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-04-30</endDate>
        </period>
    </context>
    <context id="i97e41db4e929441a80ab1533ec54bdc7_D20200501-20200531">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-05-01</startDate>
            <endDate>2020-05-31</endDate>
        </period>
    </context>
    <context id="idcd4c6fd7e6c4700bd99b024744a2c3e_I20200430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-04-30</instant>
        </period>
    </context>
    <context id="i63fc2d2c074647e5b714af2bd8637e95_D20210601-20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2021-06-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="i893b2a822ef4462881c1203cec5419e2_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i887e2390043d43d785e1a809e4ea75cc_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i85727d1d46e54e78a61449e9f56995ff_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:JP3PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i69e33badcbbd4cf195eca43c82fc38e8_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:JP3PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia7db4dd5223e4fb19ba152c1a368065b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i5d95fb9dc6b74977a969875c9fc2d2dd_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:UnsecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i0bad8806f1364b899d22e184dec6a525_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i423e1b8e00df431ab97a6db51a37d33a_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="icdb49777de6b4a9487739d30ce33c439_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i509d787a5d62478bb93a854fe2c6777f_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="idc8cc71acc794ba6b9224c879da2ed43_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib7a124744ebf41d8a4024a4049058484_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i1b538cbc7467452dac4a8c15a8e51bb3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ifccf9fb91b1c4aab9c156b3cc4a894f2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3e754e576f4444c6956ef3f2bf7bd89d_D20201001-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i4bdcafad3f7b4bb68603e056a9a78ee4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsNonrecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="id2815ba24a69464794258b16a9a92ce0_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ifbe07b31ff5a49a7bfea63e23f53555b_D20200701-20200930">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">ftk:JP3MeasurementLLCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="i81a6d29c67e6465096b777e1505a6d3d_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i8315ebe028be4b92aaa675a5031c5080_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TransactionTypeAxis">ftk:TerpeneSupplyAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i077398da13e241e7a30a3f81ec2829f4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:TransactionTypeAxis">ftk:TerpeneSupplyAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i1ca9b002b12d46ca93d96081006fff75_D20211029-20211029">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">ftk:TerpeneSupplyAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-29</startDate>
            <endDate>2021-10-29</endDate>
        </period>
    </context>
    <context id="if4501c19529e4eee99b6dabc5b7d3479_I20211029">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:LitigationCaseAxis">ftk:TerpeneSupplyAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-29</instant>
        </period>
    </context>
    <context id="i440391a5b49148ac90645dc8caa8b863_I20200504">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2020-05-04</instant>
        </period>
    </context>
    <context id="i2995c24a70ed449fa0de5ad2a4fa875c_I20200505">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <instant>2020-05-05</instant>
        </period>
    </context>
    <context id="id669ad1c5a3843429ac64570abdbcda5_D20200505-20200505">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
        </entity>
        <period>
            <startDate>2020-05-05</startDate>
            <endDate>2020-05-05</endDate>
        </period>
    </context>
    <context id="ie7110f08b6bd49789b675f906b58958b_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i4506bd980abe49e4beb43486cb6c1d52_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i667bc9edbea84444a41a21c971524c7e_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i75a20287b0114e4192e4a0cca283cc61_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ftk:A2019PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i7e785df9888e45b8b07bbe7046966552_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ftk:A2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i6e112da938c545c0af752fce3ebac29b_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ftk:A2014PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i43bee5c9250943a6956dd0e7d1a12950_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ftk:A2010PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i6d84e9fb7f3b41db9693c717db8a605c_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ftk:A2007PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie99535a5332d4ed9928c465136fcfba4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">ftk:A2019And2018PlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic3a0e39995ba441393d637037ad5d36e_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ftk:MarketBasedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i367ee582f7d04dbea85cdc8f5e8ff2e4_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ftk:MarketBasedOptionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i178ac6e8be274a2bb74032490d32bac2_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">ftk:RestrictedStockPerformanceBasedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ieb8d36a0a76d48458beae99911bc3cea_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9d30c19743e24a0598ce550630f64c96_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i6f4f7bef78524b92b910cd58271fbd95_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ia4b486ec7f0d48309d6dd4be4054a2f2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i8b945e8437d64df9b5a60d05c5b0c41a_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ib9eb784639ba42aa9bd1d8a9edf50a2a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i60e7c638740a46cabead2aa51ebca0a8_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i69c7ef7e8ec44db3a80b159ce5cf7fbe_I20121231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2012-12-31</instant>
        </period>
    </context>
    <context id="ia1908e4cecc44353bf0f898fc7a8c2f8_D20120101-20121231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2012-01-01</startDate>
            <endDate>2012-12-31</endDate>
        </period>
    </context>
    <context id="i35d8f3b733c64c73ab4abcb9d158f08d_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="iaf6475ed4ea94caca87659362adabacf_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib8cdae8426424ff8961c6804d5680eba_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i9ad5cd3a20d94e82a30da6dc3e9d9de4_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ica3f0bc84f81428b8b7136cc34209071_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib22c58da06fc46ad9424067eafae5583_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i206a061c98c0467ea4f05fc25145dd0f_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="idaab4d7053d644859b01f4af72544f01_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if6f424fae6354066be1c649810bcd3a3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:ChiefExecutiveOfficerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i723d95f466c842aea13d07a093adff97_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i88310026d54d4744945094abdc3657de_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ie80bf159bc5442648a40d8bc4dfa6e91_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i5fa96cdb7d454681a75ad31c27c331ca_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i059d9313735445eda36522fa99a5116f_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i3a43ef6317a34f51ab0c88c4fd4f5146_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i76a2ce0fffb24d219b865d6ebe93beb1_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ic258cd1d800440109b9a45d4b8cb29f5_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i94ccd6fe68444878b5c16e5ade3cab83_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="id8089155f27f419c8806b36be5a736a8_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3ae7c87f4c99469c8ee7f9c4ca1aec3d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="i75153af6920c4faa93dc00f129283be4_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:DataAnalyticsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ibeb608634a834e6190a6f72be56cf050_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="if747ddd5d52b4851a0d701409394e2cb_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i9edbbdb108c342abb7e938e5c39c9fca_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="i36fe2cdc4dc34588904bb61c865884d1_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</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="iacdf431bfe0b44cebbf1f2acb642b34a_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ief58ebe72e9a41fd98328d582c08f526_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:AE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i9e51bc516acf4c679c438214e3dca387_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4a35508c632e4b338f5be9bfe7542f1e_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i52881f81e6f44908af46c96084de6561_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ftk:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i4ba8d3d0555b42069cf7c83e1130390c_D20210101-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ftk:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="ie87ae43d178e45db9608a8d560174ce3_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ftk:CustomerMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ie3ba2d8aa26e4895823f945ae210e90f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">ftk:CustomerBMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">ftk:ChemistryTechnologiesSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="ib9f84f24bac749dcbe74216d6bbae233_D20220202-20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">ftk:PIPETransactionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-02</startDate>
            <endDate>2022-02-02</endDate>
        </period>
    </context>
    <context id="ibe0b55301e4f40ac8a16be9fa5079f53_I20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-02-02</instant>
        </period>
    </context>
    <context id="i6fb9eec07e364b65aab872b93a8825bb_D20220202-20220202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000928054</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-02</startDate>
            <endDate>2022-02-02</endDate>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="segment">
        <measure>ftk:segment</measure>
    </unit>
    <unit id="provision">
        <measure>ftk:provision</measure>
    </unit>
    <unit id="series">
        <measure>ftk:series</measure>
    </unit>
    <unit id="d">
        <measure>utr:D</measure>
    </unit>
    <dei:EntityRegistrantName
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80L2ZyYWc6YTJkNTllNWNiNGVhNGVjMDlkNDExMTZlYjUxOWQ2N2YvdGFibGU6MWVkYzQ2ODczODAyNDM2YWFlZWIzMWQwYzI4NjY2N2YvdGFibGVyYW5nZToxZWRjNDY4NzM4MDI0MzZhYWVlYjMxZDBjMjg2NjY3Zl8yLTEtMS0xLTMyNDg4_16ddde7c-7bd1-4473-b906-b49b7647b515">FLOTEK INDUSTRIES INC/CN</dei:EntityRegistrantName>
    <dei:EntityCentralIndexKey
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80L2ZyYWc6YTJkNTllNWNiNGVhNGVjMDlkNDExMTZlYjUxOWQ2N2YvdGFibGU6MWVkYzQ2ODczODAyNDM2YWFlZWIzMWQwYzI4NjY2N2YvdGFibGVyYW5nZToxZWRjNDY4NzM4MDI0MzZhYWVlYjMxZDBjMjg2NjY3Zl8zLTEtMS0xLTMyNDg4_edb11958-121e-4166-be09-df94a408833d">0000928054</dei:EntityCentralIndexKey>
    <dei:DocumentFiscalYearFocus
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80L2ZyYWc6YTJkNTllNWNiNGVhNGVjMDlkNDExMTZlYjUxOWQ2N2YvdGFibGU6MWVkYzQ2ODczODAyNDM2YWFlZWIzMWQwYzI4NjY2N2YvdGFibGVyYW5nZToxZWRjNDY4NzM4MDI0MzZhYWVlYjMxZDBjMjg2NjY3Zl81LTEtMS0xLTMyNDg4_63418b25-c20f-4791-9f16-bcc544fe16e2">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80L2ZyYWc6YTJkNTllNWNiNGVhNGVjMDlkNDExMTZlYjUxOWQ2N2YvdGFibGU6MWVkYzQ2ODczODAyNDM2YWFlZWIzMWQwYzI4NjY2N2YvdGFibGVyYW5nZToxZWRjNDY4NzM4MDI0MzZhYWVlYjMxZDBjMjg2NjY3Zl82LTEtMS0xLTMyNDg4_b74de732-b032-4cb1-bee1-48c4780d7d52">FY</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80L2ZyYWc6YTJkNTllNWNiNGVhNGVjMDlkNDExMTZlYjUxOWQ2N2YvdGFibGU6MWVkYzQ2ODczODAyNDM2YWFlZWIzMWQwYzI4NjY2N2YvdGFibGVyYW5nZToxZWRjNDY4NzM4MDI0MzZhYWVlYjMxZDBjMjg2NjY3Zl83LTEtMS0xLTMyNDg4_bffe88a0-f8d0-43fa-9a1b-2518777189f9">false</dei:AmendmentFlag>
    <dei:DocumentType
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6ZjE4YjAyOWFmNmE5NGE0MmJjYTlhOWRjNWUyOTQ0MDEvdGFibGVyYW5nZTpmMThiMDI5YWY2YTk0YTQyYmNhOWE5ZGM1ZTI5NDQwMV8xLTAtMS0xLTMyNTYyL3RleHRyZWdpb246ZGI5OGNlOTQxMTRmNGE1OGEzYjU3NWZkZGUwYmU1MjRfOQ_f1f97f4c-63c3-4b73-9886-c6eac5413d43">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6ZjE4YjAyOWFmNmE5NGE0MmJjYTlhOWRjNWUyOTQ0MDEvdGFibGVyYW5nZTpmMThiMDI5YWY2YTk0YTQyYmNhOWE5ZGM1ZTI5NDQwMV8zLTAtMS0xLTMyNTk2_b3c371d4-4a82-4cba-85b3-0662ee9762ec">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6ZjE4YjAyOWFmNmE5NGE0MmJjYTlhOWRjNWUyOTQ0MDEvdGFibGVyYW5nZTpmMThiMDI5YWY2YTk0YTQyYmNhOWE5ZGM1ZTI5NDQwMV80LTEtMS0xLTMyNTYyL3RleHRyZWdpb246MWI5OTNhYzU0NDYxNGZlODkzYzkyYjY5Y2UzOWE4YmJfNTQ5NzU1ODEzODk0NA_3a38f70a-ed2d-45ca-ade9-601d963ea861">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6ZjE4YjAyOWFmNmE5NGE0MmJjYTlhOWRjNWUyOTQ0MDEvdGFibGVyYW5nZTpmMThiMDI5YWY2YTk0YTQyYmNhOWE5ZGM1ZTI5NDQwMV80LTEtMS0xLTMyNTYyL3RleHRyZWdpb246MWI5OTNhYzU0NDYxNGZlODkzYzkyYjY5Y2UzOWE4YmJfNTQ5NzU1ODEzODk0NA_a2c5ecc9-d16f-4c31-afe4-d6bd95844e9c">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6ZjE4YjAyOWFmNmE5NGE0MmJjYTlhOWRjNWUyOTQ0MDEvdGFibGVyYW5nZTpmMThiMDI5YWY2YTk0YTQyYmNhOWE5ZGM1ZTI5NDQwMV82LTAtMS0xLTMyNjAx_05a2f427-bc96-4786-af29-70e37f30bddf">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6ZjE4YjAyOWFmNmE5NGE0MmJjYTlhOWRjNWUyOTQ0MDEvdGFibGVyYW5nZTpmMThiMDI5YWY2YTk0YTQyYmNhOWE5ZGM1ZTI5NDQwMV84LTEtMS0xLTMyNTYyL3RleHRyZWdpb246MjY5YWI0NmZlZGM4NDViOTllYzhjMDQzZWFkMjk3NTNfMjc_bfa2cff1-2f56-42cf-ad0c-b2811d72978b">1-13270</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6MGFiNjQ1MTliMzE4NDkzZjhmMmUwOTNjNTkwZTlmZGYvdGFibGVyYW5nZTowYWI2NDUxOWIzMTg0OTNmOGYyZTA5M2M1OTBlOWZkZl8wLTAtMS0xLTMyNjAz_64fd1b3a-aeee-498f-8075-2ba7e38a4347">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6MGFiNjQ1MTliMzE4NDkzZjhmMmUwOTNjNTkwZTlmZGYvdGFibGVyYW5nZTowYWI2NDUxOWIzMTg0OTNmOGYyZTA5M2M1OTBlOWZkZl8wLTQtMS0xLTMyNjA2_18c555eb-e6a4-4e2c-8822-22400d788b98">90-0023731</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6MGFiNjQ1MTliMzE4NDkzZjhmMmUwOTNjNTkwZTlmZGYvdGFibGVyYW5nZTowYWI2NDUxOWIzMTg0OTNmOGYyZTA5M2M1OTBlOWZkZl8zLTAtMS0xLTMyNTYyL3RleHRyZWdpb246NjliZGNiNDI0MDRlNGE3ZGFkNDUyNGFjZjU3YjdjMDZfNA_ac496729-d68a-498c-96f9-35ae462d29e0">8846 N. Sam Houston Parkway W.</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6MGFiNjQ1MTliMzE4NDkzZjhmMmUwOTNjNTkwZTlmZGYvdGFibGVyYW5nZTowYWI2NDUxOWIzMTg0OTNmOGYyZTA5M2M1OTBlOWZkZl8zLTAtMS0xLTMyNTYyL3RleHRyZWdpb246NjliZGNiNDI0MDRlNGE3ZGFkNDUyNGFjZjU3YjdjMDZfOA_d3307771-b61f-4968-a602-22bc84034aed">Houston,</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6MGFiNjQ1MTliMzE4NDkzZjhmMmUwOTNjNTkwZTlmZGYvdGFibGVyYW5nZTowYWI2NDUxOWIzMTg0OTNmOGYyZTA5M2M1OTBlOWZkZl8zLTAtMS0xLTMyNTYyL3RleHRyZWdpb246NjliZGNiNDI0MDRlNGE3ZGFkNDUyNGFjZjU3YjdjMDZfMTE_71bb9576-7f1e-45ba-93ea-8c85530a8a38">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6MGFiNjQ1MTliMzE4NDkzZjhmMmUwOTNjNTkwZTlmZGYvdGFibGVyYW5nZTowYWI2NDUxOWIzMTg0OTNmOGYyZTA5M2M1OTBlOWZkZl8zLTQtMS0xLTMyNjA4_d0f779b4-5dfb-4020-b157-56b3888ba3eb">77064</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMxNDk0_5b70987f-d6b1-4b14-a4df-e2a81b05d171">713</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMxNDk5_5e51883c-74a0-4675-91a0-6da14697575b">849-9911</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6N2M5NWQwNzA4MDA3NDgxNGI2MmQ2MzM3NDUxZGIzYWYvdGFibGVyYW5nZTo3Yzk1ZDA3MDgwMDc0ODE0YjYyZDYzMzc0NTFkYjNhZl8yLTAtMS0xLTMyNjEw_1c8ed3cb-19f5-484b-9690-3e1ba3935f96">Common Stock, $0.0001 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6N2M5NWQwNzA4MDA3NDgxNGI2MmQ2MzM3NDUxZGIzYWYvdGFibGVyYW5nZTo3Yzk1ZDA3MDgwMDc0ODE0YjYyZDYzMzc0NTFkYjNhZl8yLTEtMS0xLTMyNjEz_25c9c7ab-a8c7-4a83-af22-3a289d5ffa73">FTK</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGFibGU6N2M5NWQwNzA4MDA3NDgxNGI2MmQ2MzM3NDUxZGIzYWYvdGFibGVyYW5nZTo3Yzk1ZDA3MDgwMDc0ODE0YjYyZDYzMzc0NTFkYjNhZl8yLTItMS0xLTMyNjE1_fca02973-7c38-4dca-8374-c8bed71f91cb">NYSE</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMxNzYw_d5a4f3c0-4466-4669-9652-adeb83113c58">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMxODgy_3df4738a-4a6a-47c1-96ba-c5b8c5e9094b">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMyMjE3_3220b244-f388-4873-88e0-c9536ed197f9">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMyNTIy_d907ed82-bfe7-4e4c-b793-70573c7a92b7">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8zMjk4NTM0ODg5ODM2_61ec1fa9-d30a-4843-9c89-447d19c2b884">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMyOTM5_36e4ea70-85ed-4fdb-bf2a-7c8eb0f7e7ad">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8xMDk5NTExNjMyOTY3_04e10b10-ea22-4233-8f26-6de87513972b">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8yMTk5MDIzMjYyMTM4_80819947-8e16-4feb-92ad-4c6133c7187e">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8zMjk4NTM0ODg5ODM4_4df68a1a-08ad-448b-99bd-5e126c21667b">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="id4d7b9dd1b7f4b2e83f026f513bb8912_I20210630"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8yNzQ4Nzc5MDc1OTkw_6cd88f6a-16ee-47b1-bb33-1bd19e8757c7"
      unitRef="usd">128000000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i9500ab7a2dd74a938ac277a295ee089f_I20220330"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF85ODk1NjA0NjU2NTYx_f4c58ba9-d10f-4753-8dbb-ae34a59f4e9f"
      unitRef="shares">76635518</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xL2ZyYWc6MjNhNWI2NmMyOGM2NGYzMGEzNDQzZTlmMzI0OWU5OWQvdGV4dHJlZ2lvbjoyM2E1YjY2YzI4YzY0ZjMwYTM0NDNlOWYzMjQ5ZTk5ZF8zMjk4NTM0ODg5ODM5_5ea5f076-5d19-43ad-8015-c07d94b4da19">DOCUMENTS INCORPORATED BY REFERENCEPortions of the Company&#x2019;s definitive proxy statement in connection with the 2022 Annual Meeting of Stockholders to be filed with the Commission pursuant to Regulation 14A are incorporated by reference into Part III of this Annual Report on Form 10-K.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i430bf94ffaa64339ba2128b52babcc80_I20220216"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNDM4L2ZyYWc6MjVlODU2OTg0NTM3NDkzOWE2ZTY3MGNmYTk1MTM3YmUvdGV4dHJlZ2lvbjoyNWU4NTY5ODQ1Mzc0OTM5YTZlNjcwY2ZhOTUxMzdiZV8yMDM0MDk2NTE4ODM0Mw_e7bdce22-5132-409e-b8b1-3b7d6b583afa"
      unitRef="usdPerShare">1.088125</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <ftk:DebtInstrumentConvertibleConversionPriceAtMaturity
      contextRef="i430bf94ffaa64339ba2128b52babcc80_I20220216"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNDM4L2ZyYWc6MjVlODU2OTg0NTM3NDkzOWE2ZTY3MGNmYTk1MTM3YmUvdGV4dHJlZ2lvbjoyNWU4NTY5ODQ1Mzc0OTM5YTZlNjcwY2ZhOTUxMzdiZV8yMDM0MDk2NTE4ODQwNA_4ec42b96-c727-4300-8510-0952a056258f"
      unitRef="usdPerShare">0.8705</ftk:DebtInstrumentConvertibleConversionPriceAtMaturity>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="iade1f432957c4a9a97933efdf47f68b2_D20150101-20150101"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNDM4L2ZyYWc6MjVlODU2OTg0NTM3NDkzOWE2ZTY3MGNmYTk1MTM3YmUvdGV4dHJlZ2lvbjoyNWU4NTY5ODQ1Mzc0OTM5YTZlNjcwY2ZhOTUxMzdiZV85ODk1NjA0NzIwOTg5_05c1ae7c-9784-4c7b-b198-7eafb170b1dc"
      unitRef="number">1</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="iade1f432957c4a9a97933efdf47f68b2_D20150101-20150101"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNDM4L2ZyYWc6MjVlODU2OTg0NTM3NDkzOWE2ZTY3MGNmYTk1MTM3YmUvdGV4dHJlZ2lvbjoyNWU4NTY5ODQ1Mzc0OTM5YTZlNjcwY2ZhOTUxMzdiZV85ODk1NjA0NzIxMDAy_522b4e11-bde0-4b8a-919b-d9db1e7f3597"
      unitRef="number">0.02</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <dei:AuditorName
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xODAzL2ZyYWc6Y2UyOGZmNTY2OGZjNGExZDg0YjU4NzBhNmIxODhjZDYvdGV4dHJlZ2lvbjpjZTI4ZmY1NjY4ZmM0YTFkODRiNTg3MGE2YjE4OGNkNl8yNzQ4Nzc5MTM0Mzcz_262dc9c0-16a8-45ba-b007-9a86710df1a9">KPMG LLP</dei:AuditorName>
    <dei:AuditorLocation
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xODAzL2ZyYWc6Y2UyOGZmNTY2OGZjNGExZDg0YjU4NzBhNmIxODhjZDYvdGV4dHJlZ2lvbjpjZTI4ZmY1NjY4ZmM0YTFkODRiNTg3MGE2YjE4OGNkNl8yNzQ4Nzc5MTM0Mzc0_bd1003a9-ce89-4aa4-9e08-298e19ef6299">Houston, Texas</dei:AuditorLocation>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMy0xLTEtMS0zMjQ4OA_a16d02fe-5afd-4e12-a19b-1683060ffed4"
      unitRef="usd">11534000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMy0zLTEtMS0zMjQ4OA_3369a035-c23e-450c-84bc-2082255d2728"
      unitRef="usd">38660000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNC0xLTEtMS0zMjQ4OA_9de0a68c-df7a-4037-890b-37a51bb962b3"
      unitRef="usd">1790000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNC0zLTEtMS0zMjQ4OA_9691745c-e841-4fba-979a-9392db12b3a3"
      unitRef="usd">664000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNS0wLTEtMS0zMjQ4OC90ZXh0cmVnaW9uOmJhMDg1Y2NjY2U3ZDRmZGNhYWQ2OWFmMWZmNmRjZTk5XzY3_f3e013c8-7cc0-4cce-87a7-98d987f3084f"
      unitRef="usd">659000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNS0wLTEtMS0zMjQ4OC90ZXh0cmVnaW9uOmJhMDg1Y2NjY2U3ZDRmZGNhYWQ2OWFmMWZmNmRjZTk5Xzc0_f4fb1252-f4a1-4fe2-ac95-818aa04df118"
      unitRef="usd">1316000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNS0xLTEtMS0zMjQ4OA_91bafa91-6bd4-421a-8dff-da4700710a02"
      unitRef="usd">13297000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNS0zLTEtMS0zMjQ4OA_af8001a3-190d-4caf-bc40-a67f4c560b8c"
      unitRef="usd">11764000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNi0xLTEtMS0zMjQ4OA_2919f0c7-2c88-4461-852f-f79ff2bfa851"
      unitRef="usd">9454000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNi0zLTEtMS0zMjQ4OA_34256630-fd48-4c29-bc0e-7a60362c302f"
      unitRef="usd">11837000</us-gaap:InventoryNet>
    <us-gaap:IncomeTaxesReceivable
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfOC0xLTEtMS0zMjQ4OA_810e6838-ecb3-424d-a256-defb3ebce79c"
      unitRef="usd">22000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:IncomeTaxesReceivable
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfOC0zLTEtMS0zMjQ4OA_02a19ca9-95a7-468b-b5ec-9906160a673a"
      unitRef="usd">403000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:OtherAssetsCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTAtMS0xLTEtMzI0ODg_1368c0fd-6bc8-41fb-9d58-1a7088b12d7d"
      unitRef="usd">3740000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTAtMy0xLTEtMzI0ODg_cd7e0f57-ea23-4202-899d-5f6da3f6f8d0"
      unitRef="usd">3127000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsHeldForSaleNotPartOfDisposalGroup
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTEtMS0xLTEtMzI0ODg_8ca21a42-3bb0-40c9-a824-cd3df3f146f0"
      unitRef="usd">2762000</us-gaap:AssetsHeldForSaleNotPartOfDisposalGroup>
    <us-gaap:AssetsHeldForSaleNotPartOfDisposalGroup
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTEtMy0xLTEtMzI0ODg_524cbf77-a022-40a6-82c5-dd6544e65176"
      unitRef="usd">0</us-gaap:AssetsHeldForSaleNotPartOfDisposalGroup>
    <us-gaap:AssetsCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTItMS0xLTEtMzI0ODg_ddb09a2c-a5bd-48d9-9e67-a3ca5d71ca17"
      unitRef="usd">42599000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTItMy0xLTEtMzI0ODg_9cef850c-5d99-45cc-81f9-e5883abdb26d"
      unitRef="usd">66455000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTMtMS0xLTEtMzI0ODg_4d0b7d53-58e7-4246-9515-f62bfe48f539"
      unitRef="usd">5296000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTMtMy0xLTEtMzI0ODg_8479e83c-6370-40fb-bdf9-2541a396dd73"
      unitRef="usd">9087000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTQtMS0xLTEtMzI0ODg_df6ec062-826e-48dd-a759-7f814844bc64"
      unitRef="usd">2041000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTQtMy0xLTEtMzI0ODg_4e29d22c-9a41-4ed8-85e7-db5f59cc40cc"
      unitRef="usd">2320000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTUtMS0xLTEtMzI0ODg_bd215e77-88af-4252-bd0d-93d9607a19af"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTUtMy0xLTEtMzI0ODg_98f5e53b-3c0c-408e-b8e0-0c27320ef527"
      unitRef="usd">8092000</us-gaap:Goodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTYtMS0xLTEtMzI0ODg_239440fa-7e83-4bff-be97-7e894e203fb5"
      unitRef="usd">279000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTYtMy0xLTEtMzI0ODg_f9eb34fd-ca8f-44e1-b3e7-e431f6d0e81e"
      unitRef="usd">223000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTgtMS0xLTEtMzI0ODg_36c27198-915c-4267-9bcf-e0776757ae94"
      unitRef="usd">29000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMTgtMy0xLTEtMzI0ODg_edb25a52-2c8f-4fc5-8dee-2fd53a1ad3d2"
      unitRef="usd">33000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjAtMS0xLTEtMzI0ODg_acdbc0b9-d0ca-4519-9c7b-67e483b5e14a"
      unitRef="usd">50244000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjAtMy0xLTEtMzI0ODg_86390270-1a02-4f76-94c9-12e026ca9bc3"
      unitRef="usd">86210000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjQtMS0xLTEtMzI0ODg_892e781c-470a-4efe-bef9-75ab2f19a5c3"
      unitRef="usd">7616000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjQtMy0xLTEtMzI0ODg_ada9002f-066e-4140-b4ba-f9a86af111b9"
      unitRef="usd">5787000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjUtMS0xLTEtMzI0ODg_47d4465a-d334-4167-b03f-4dc006057b8d"
      unitRef="usd">8996000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjUtMy0xLTEtMzI0ODg_51514c41-8d43-4881-b852-1bb4c1010bf1"
      unitRef="usd">18275000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjYtMS0xLTEtMzI0ODg_35d1614b-323b-4e64-b192-97efb4319503"
      unitRef="usd">4000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjYtMy0xLTEtMzI0ODg_26bef90c-647a-4f40-a0e3-2c0eea0b6621"
      unitRef="usd">21000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:InterestPayableCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjctMS0xLTEtMzI0ODg_a2ba044f-8992-4643-9843-e97c0dfd6469"
      unitRef="usd">82000</us-gaap:InterestPayableCurrent>
    <us-gaap:InterestPayableCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMjctMy0xLTEtMzI0ODg_dcd9b902-5060-4fbe-bdc8-ceff8b1dcfed"
      unitRef="usd">34000</us-gaap:InterestPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzAtMS0xLTEtMzI0ODg_d6fa62d1-6f79-4b84-9c42-b94bebe1f920"
      unitRef="usd">602000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzAtMy0xLTEtMzI0ODg_65757006-e5e4-4956-b3fe-d77471a6f4c4"
      unitRef="usd">636000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzEtMS0xLTEtMzI0ODg_4e548343-9a21-49ff-9a46-84521bca3532"
      unitRef="usd">41000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzEtMy0xLTEtMzI0ODg_3afafb1c-0432-4746-9b56-ef08443e242b"
      unitRef="usd">60000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzItMS0xLTEtMzI0ODg_b8b7f293-8e72-4486-8917-097d45a364d2"
      unitRef="usd">1436000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzItMy0xLTEtMzI0ODg_e5872992-5b23-4159-ab24-ca9a1f0f6f5c"
      unitRef="usd">4048000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzQtMS0xLTEtMzI0ODg_b66e028c-0140-42ef-a098-4c387262306f"
      unitRef="usd">18777000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzQtMy0xLTEtMzI0ODg_a69bb341-2dac-4013-9a98-d04dc5aea515"
      unitRef="usd">28861000</us-gaap:LiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzUtMS0xLTEtMzI0ODg_457c8c97-c139-4ff5-85e6-7ec88a1592b3"
      unitRef="usd">91000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzUtMy0xLTEtMzI0ODg_dc2d5673-6e01-4079-b14a-897a9b0d0c31"
      unitRef="usd">117000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzYtMS0xLTEtMzI0ODg_308d9b4e-5536-4933-adcc-2c63a8b0f4ec"
      unitRef="usd">7779000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzYtMy0xLTEtMzI0ODg_8dc97010-fc56-499a-9e48-86917d530a40"
      unitRef="usd">8348000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzctMS0xLTEtMzI0ODg_be756c6a-656f-4fc2-89ac-d616e2795ecb"
      unitRef="usd">53000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzctMy0xLTEtMzI0ODg_35ee3726-d380-4244-9e19-2e2ff7b8eece"
      unitRef="usd">96000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzgtMS0xLTEtMzI0ODg_43998b30-9769-40c6-90fa-48e45df485a5"
      unitRef="usd">3352000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfMzgtMy0xLTEtMzI0ODg_f363e19f-9095-4c69-9c03-724cb45f3fba"
      unitRef="usd">1617000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:Liabilities
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDAtMS0xLTEtMzI0ODg_722e74c7-a3a6-40ab-b00d-5e2ffa88ef92"
      unitRef="usd">30052000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDAtMy0xLTEtMzI0ODg_097d16bc-2e30-4cdd-95e3-afccbde5ae17"
      unitRef="usd">39039000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDEtMS0xLTEtMzI0ODg_f3085b2e-8913-4f30-b6b0-187c9d99c53f"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDEtMy0xLTEtMzI0ODg_abb75da3-2150-41ef-bafb-119eb4013ecf"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl8yMQ_725ce886-1e8d-4f0c-b7bc-532644379334"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl8yMQ_9661f4db-bff6-4113-ab11-29740b2f29ad"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl8zNQ_e01499fc-9444-4303-9fd1-050ad0cd6f2b"
      unitRef="shares">100000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl8zNQ_eeb58143-8029-4673-82d4-e92d64bb6d14"
      unitRef="shares">100000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl81Nw_40451700-e37d-4ca7-bd5c-889e0d7f415f"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl81Nw_408d53e1-e283-4ecf-b5e8-271faf2fb773"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl81Nw_bf69e011-fb88-435f-825d-beaa028e1981"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2ZGNkMTk4Njk3N2Y0MGZhODAxODE1YTMyZWNhNDAzNl81Nw_c35a5b09-fde6-499f-aaa5-f50f6e892e76"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValueOutstanding
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMS0xLTEtMzI0ODg_fa914d83-26aa-4055-94e3-8824db1aa381"
      unitRef="usd">0</us-gaap:PreferredStockValueOutstanding>
    <us-gaap:PreferredStockValueOutstanding
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDMtMy0xLTEtMzI0ODg_321f1d74-de29-46b5-b8cf-4268164eeddc"
      unitRef="usd">0</us-gaap:PreferredStockValueOutstanding>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8xOA_20f68be2-d351-4f85-ade4-68fcf999df14"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8xOA_9d1513d5-dc9c-4dcb-a6bf-cab59ee6e04c"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8zMg_20dd76af-74d9-422b-b932-42b4d073d4f4"
      unitRef="shares">140000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8zMg_96fbb22e-ef59-4d09-ba53-f3031f2c8e06"
      unitRef="shares">140000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8yMTk5MDIzMjU1Nzc4_4cce243a-9875-481b-922e-3c7025aa0878"
      unitRef="shares">79483837</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8yMTk5MDIzMjU1Nzkx_87d8c2b6-ba7d-445b-a0eb-86b2dc1669ae"
      unitRef="shares">73461203</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8xMjA_955b8ddb-aabb-4919-a345-069d00eabc01"
      unitRef="shares">78669414</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjo2YmMzMDU1MmRjZjE0Nzg5YjM3ZWU0MTNhYjI1ZDQ4ZV8xNDE_c6b7c127-3d59-428c-a477-7927d249f2fe"
      unitRef="shares">73088494</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMS0xLTEtMzI0ODg_7f0a7414-9ac0-4bc0-b544-2af52df56730"
      unitRef="usd">8000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDQtMy0xLTEtMzI0ODg_84921ca9-eae7-43ff-bac7-aff2a1aaee94"
      unitRef="usd">8000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDUtMS0xLTEtMzI0ODg_4dfc5e6a-5c19-43d6-87ce-178a56019635"
      unitRef="usd">363417000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDUtMy0xLTEtMzI0ODg_3fdd9735-c862-4045-a121-8cd6b3a912ef"
      unitRef="usd">359721000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDYtMS0xLTEtMzI0ODg_bafcc4a9-ccd9-4a84-9196-7b2e806b496d"
      unitRef="usd">81000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDYtMy0xLTEtMzI0ODg_04bb7833-647d-445f-b978-04492d9f2913"
      unitRef="usd">-19000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDctMS0xLTEtMzI0ODg_dd52e262-5a05-4f72-a8d6-1367a625bd29"
      unitRef="usd">-309214000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDctMy0xLTEtMzI0ODg_0cb23cad-6739-4121-9a1f-76f8c608b56d"
      unitRef="usd">-278688000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockShares
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDgtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjplOTAxZmYzYWI5NDE0NGI0ODU0YTlmZjM1ZDcyMGIwN18yOQ_4c291bba-e425-4411-bc4a-92c863946a08"
      unitRef="shares">6022634</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDgtMC0xLTEtMzI0ODgvdGV4dHJlZ2lvbjplOTAxZmYzYWI5NDE0NGI0ODU0YTlmZjM1ZDcyMGIwN18zNg_13f9951f-1418-4fb5-86d6-9e270e8b2635"
      unitRef="shares">5580920</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDgtMS0xLTEtMzI0ODg_648391e8-22f2-43d7-8797-2daaf27526e7"
      unitRef="usd">34100000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNDgtMy0xLTEtMzI0ODg_fc910f46-d2c0-4470-b30b-b00863793783"
      unitRef="usd">33851000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNTEtMS0xLTEtMzI0ODg_71f1c4de-eec4-4c70-b498-27844beacdc8"
      unitRef="usd">20192000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNTEtMy0xLTEtMzI0ODg_cb3d02e5-5184-451b-87da-3a8482c66e22"
      unitRef="usd">47171000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNTItMS0xLTEtMzI0ODg_3e21d0a2-d847-4e89-8e48-92a979acd041"
      unitRef="usd">50244000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xOS9mcmFnOjk3M2Q2NDRkMzdkNjQwYmNiZmVmZGQ1Yjc4NDVmM2E2L3RhYmxlOjE3NWZlZjM1ZDYzZTRlNjJhZmQ3Nzg0NjI5MWI1OWUxL3RhYmxlcmFuZ2U6MTc1ZmVmMzVkNjNlNGU2MmFmZDc3ODQ2MjkxYjU5ZTFfNTItMy0xLTEtMzI0ODg_52dd221e-dce3-45f4-a429-e3232a097d3c"
      unitRef="usd">86210000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMy01LTEtMS0zMjQ4OA_46124690-9994-4b94-ae08-dd81e5544c1f"
      unitRef="usd">39627000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMy03LTEtMS0zMjQ4OA_74a9aae8-0189-4f8a-9e11-ccbd6c3b1930"
      unitRef="usd">53141000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromRelatedParties
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNC01LTEtMS0zMjQ4OA_d2d1048b-76c7-4ab5-9923-8d29c95be2d0"
      unitRef="usd">3641000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNC03LTEtMS0zMjQ4OA_a5aec094-cf69-45eb-8f38-8eb683a84813"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:Revenues
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNS01LTEtMS0zMjQ4OA_6f88e219-de7a-45d1-a76a-5df68da8fa33"
      unitRef="usd">43268000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNS03LTEtMS0zMjQ4OA_34885a16-7222-4696-9a2e-b4560fa4d1d4"
      unitRef="usd">53141000</us-gaap:Revenues>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNi01LTEtMS0zNDEyNA_137d2883-8831-4a1a-9bf3-2a88935bc897"
      unitRef="usd">40012000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNi03LTEtMS0zNDEyNg_4f182c93-5f3d-4746-b57c-7c7c063b1bd4"
      unitRef="usd">81814000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNy01LTEtMS0zNDEzMA_f4fd6dd3-dee6-422a-b549-d2b1a76743bd"
      unitRef="usd">3256000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNy03LTEtMS0zNDEzMg_28ba60aa-173f-4f75-9b5c-da21715eb6e8"
      unitRef="usd">-28673000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfOC01LTEtMS0zMjQ4OA_00f11a38-0c68-4b52-84ca-483b3c8448fa"
      unitRef="usd">20166000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfOC03LTEtMS0zMjQ4OA_220f6b7f-da99-4337-8501-7a38d5d42cbe"
      unitRef="usd">22763000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:DepreciationAndAmortization
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTAtNS0xLTEtMzI0ODg_401d769b-4b0f-41c5-8da0-27fd999f8367"
      unitRef="usd">1011000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTAtNy0xLTEtMzI0ODg_41cf09ec-9bd4-4341-b764-e8707b499acb"
      unitRef="usd">3412000</us-gaap:DepreciationAndAmortization>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTEtNS0xLTEtMzI0ODg_b9e9d72c-67ab-4617-959e-433b099c08a3"
      unitRef="usd">5537000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTEtNy0xLTEtMzI0ODg_351c8fe9-ada4-4b4b-8fca-3d90dbcf9409"
      unitRef="usd">7213000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTItNS0xLTEtMzI0ODg_a1fe1b9d-b546-4942-9c72-5bd2117d7fa8"
      unitRef="usd">94000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTItNy0xLTEtMzI0ODg_cd543bc7-0042-4fb2-a79d-08982e4a7151"
      unitRef="usd">94000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTMtNS0xLTEtMzI0ODg_44784521-e42d-40c3-8d0e-a9e5e44dfc74"
      unitRef="usd">8092000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTMtNy0xLTEtMzI0ODg_57302660-a633-466b-852c-7cff602cde0c"
      unitRef="usd">11706000</us-gaap:GoodwillImpairmentLoss>
    <ftk:ImpairmentOfPropertyAndEquipmentAndIntangibleAssets
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTQtNS0xLTEtMzI0ODg_81a92f53-1ec4-4dd5-905e-f45c147f5fa4"
      unitRef="usd">0</ftk:ImpairmentOfPropertyAndEquipmentAndIntangibleAssets>
    <ftk:ImpairmentOfPropertyAndEquipmentAndIntangibleAssets
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTQtNy0xLTEtMzI0ODg_f3381e9a-def3-489f-9bc8-0be14f7457a6"
      unitRef="usd">69975000</ftk:ImpairmentOfPropertyAndEquipmentAndIntangibleAssets>
    <us-gaap:CostsAndExpenses
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTUtNS0xLTEtMzI0ODg_67a78170-c9ee-4d01-a2f1-9cc344f13a2b"
      unitRef="usd">34712000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTUtNy0xLTEtMzI0ODg_0367a150-8bcb-4749-9b45-818f722941f5"
      unitRef="usd">114975000</us-gaap:CostsAndExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTYtNS0xLTEtMzI0ODg_136da1a4-34a6-42d9-aef2-52d63f343c26"
      unitRef="usd">-31456000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTYtNy0xLTEtMzI0ODg_8d1b0f6b-76b6-4778-8131-b100548dfb8d"
      unitRef="usd">-143648000</us-gaap:OperatingIncomeLoss>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTgtNS0xLTEtMzI0ODg_9f703f9a-5781-4295-b1bd-d24bd599f3fe"
      unitRef="usd">881000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMTgtNy0xLTEtMzI0ODg_13546b16-b42c-4f26-b1a6-1898b1d2dcfa"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:InterestExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjItNS0xLTEtMzI0ODg_f4c56cce-78a2-4390-8eb8-533965adedbe"
      unitRef="usd">78000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjItNy0xLTEtMzI0ODg_c3b86bdd-7a1c-401b-a085-721256de564e"
      unitRef="usd">60000</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjYtNS0xLTEtMzI0ODg_ff015192-4577-4e8b-9f9f-33d95e68b6de"
      unitRef="usd">87000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjYtNy0xLTEtMzI0ODg_45b45dd3-ea87-4f15-80da-b3d4cf3dfdd7"
      unitRef="usd">1079000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjctNS0xLTEtMzI0ODg_7626af48-6d00-4ada-98a6-b39b659a5162"
      unitRef="usd">890000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjctNy0xLTEtMzI0ODg_8f2e9b63-39ca-462f-8b6b-97ac35069f83"
      unitRef="usd">1019000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjgtNS0xLTEtMzI0ODg_f6aa23c2-9562-4ebf-8fae-77079e88ba53"
      unitRef="usd">-30566000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjgtNy0xLTEtMzI0ODg_b036272b-8d6f-4dca-b091-0c9d9a2b172f"
      unitRef="usd">-142629000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjktNS0xLTEtMzI0ODg_350e9618-8788-41a5-9f8c-bb6ed3825f4b"
      unitRef="usd">-40000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMjktNy0xLTEtMzI0ODg_1daa95aa-048b-4327-a0c2-1e5b3456feb1"
      unitRef="usd">-6179000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMzAtNS0xLTEtMzI0ODg_a27ae71f-414a-4a3b-b82a-b686a458820e"
      unitRef="usd">-30526000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfMzAtNy0xLTEtMzI0ODg_25261e6e-e51b-46f8-89df-79ae40516e67"
      unitRef="usd">-136450000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNDItNS0xLTEtMzI0ODg_6e9a797b-ec66-48eb-88ae-0a2c852ab6de"
      unitRef="usdPerShare">-0.42</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNDItNy0xLTEtMzI0ODg_ec67bc67-ce4b-4471-9189-5212fdc9e9c8"
      unitRef="usdPerShare">-2.00</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNDMtNS0xLTEtMzI0ODg_0dadd131-3a85-4a8e-856d-36da270ff7a1"
      unitRef="usdPerShare">-0.42</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNDMtNy0xLTEtMzI0ODg_dbdece08-1414-476a-a356-edb9d1adc60d"
      unitRef="usdPerShare">-2.00</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNTUtNS0xLTEtMzI0ODg_9ac00c29-078d-41d2-8473-af581a46890f"
      unitRef="shares">73361000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNTUtNy0xLTEtMzI0ODg_0d3063c6-8895-4038-b6db-8ef9b54f63c6"
      unitRef="shares">68312000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNTYtNS0xLTEtMzI0ODg_49ba1fd5-60fe-4c6b-a59e-d5071ed2606b"
      unitRef="shares">73361000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yMi9mcmFnOjhjODY5N2QyOWZhMTQxMTE4NGNmMDg0MTkzZjM1YWI3L3RhYmxlOmJhYjJlMzI0ZWFlMTRiOGM4NjZlMWM0NmUxZDMzMjc1L3RhYmxlcmFuZ2U6YmFiMmUzMjRlYWUxNGI4Yzg2NmUxYzQ2ZTFkMzMyNzVfNTYtNy0xLTEtMzI0ODg_d1c81d71-5c89-466f-b240-d8ca0731b603"
      unitRef="shares">68312000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yNS9mcmFnOjg3MWE1MTU2ZTY3YjQ5YjVhNjNiZmViYzFkYmUzN2QwL3RhYmxlOmVkODk5OWQwNTJlYjRhYmFiMWE5Nzg5Zjk0MzU4YjY4L3RhYmxlcmFuZ2U6ZWQ4OTk5ZDA1MmViNGFiYWIxYTk3ODlmOTQzNThiNjhfMy01LTEtMS0zMjQ4OA_a27ae71f-414a-4a3b-b82a-b686a458820e"
      unitRef="usd">-30526000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yNS9mcmFnOjg3MWE1MTU2ZTY3YjQ5YjVhNjNiZmViYzFkYmUzN2QwL3RhYmxlOmVkODk5OWQwNTJlYjRhYmFiMWE5Nzg5Zjk0MzU4YjY4L3RhYmxlcmFuZ2U6ZWQ4OTk5ZDA1MmViNGFiYWIxYTk3ODlmOTQzNThiNjhfMy03LTEtMS0zMjQ4OA_25261e6e-e51b-46f8-89df-79ae40516e67"
      unitRef="usd">-136450000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yNS9mcmFnOjg3MWE1MTU2ZTY3YjQ5YjVhNjNiZmViYzFkYmUzN2QwL3RhYmxlOmVkODk5OWQwNTJlYjRhYmFiMWE5Nzg5Zjk0MzU4YjY4L3RhYmxlcmFuZ2U6ZWQ4OTk5ZDA1MmViNGFiYWIxYTk3ODlmOTQzNThiNjhfNy01LTEtMS0zMjQ4OA_2b33adc4-a751-46d7-8fc6-7f65727a0fd8"
      unitRef="usd">100000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yNS9mcmFnOjg3MWE1MTU2ZTY3YjQ5YjVhNjNiZmViYzFkYmUzN2QwL3RhYmxlOmVkODk5OWQwNTJlYjRhYmFiMWE5Nzg5Zjk0MzU4YjY4L3RhYmxlcmFuZ2U6ZWQ4OTk5ZDA1MmViNGFiYWIxYTk3ODlmOTQzNThiNjhfNy03LTEtMS0zMjQ4OA_cc063a49-8767-4ab5-9929-2b6b2c8ff1fa"
      unitRef="usd">-200000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yNS9mcmFnOjg3MWE1MTU2ZTY3YjQ5YjVhNjNiZmViYzFkYmUzN2QwL3RhYmxlOmVkODk5OWQwNTJlYjRhYmFiMWE5Nzg5Zjk0MzU4YjY4L3RhYmxlcmFuZ2U6ZWQ4OTk5ZDA1MmViNGFiYWIxYTk3ODlmOTQzNThiNjhfOS01LTEtMS0zMjQ4OA_8ccf1f32-8566-4bed-b991-4dd020aacca8"
      unitRef="usd">-30426000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yNS9mcmFnOjg3MWE1MTU2ZTY3YjQ5YjVhNjNiZmViYzFkYmUzN2QwL3RhYmxlOmVkODk5OWQwNTJlYjRhYmFiMWE5Nzg5Zjk0MzU4YjY4L3RhYmxlcmFuZ2U6ZWQ4OTk5ZDA1MmViNGFiYWIxYTk3ODlmOTQzNThiNjhfOS03LTEtMS0zMjQ4OA_12e20a3e-5f68-48b6-bba4-f0b333312658"
      unitRef="usd">-136650000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNS0xLTEtMS0zMjQ4OA_c2d5d0e9-53c4-47e2-b47a-b3224b52e8bc"
      unitRef="usd">-30526000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNS0zLTEtMS0zMjQ4OA_20200c1b-2e34-45a3-b2a6-4cf45a4b078f"
      unitRef="usd">-136450000</us-gaap:NetIncomeLoss>
    <ftk:ChangeInFairValueContingentConsideration
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNy0xLTEtMS0zMjQ4OA_731946ed-2032-4308-bfd0-47d149332e69"
      unitRef="usd">808000</ftk:ChangeInFairValueContingentConsideration>
    <ftk:ChangeInFairValueContingentConsideration
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNy0zLTEtMS0zMjQ4OA_de7e2a36-0d72-4a9e-b0f7-8788ca941760"
      unitRef="usd">-2716000</ftk:ChangeInFairValueContingentConsideration>
    <us-gaap:DepreciationAndAmortization
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfOC0xLTEtMS0zMjQ4OA_47061fdf-9ac2-4f49-a396-796811ea88df"
      unitRef="usd">1011000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfOC0zLTEtMS0zMjQ4OA_2d315976-5f51-4ea2-bd7c-df19c43519ac"
      unitRef="usd">3412000</us-gaap:DepreciationAndAmortization>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTEtMS0xLTEtMzI0ODg_a8bcd147-c062-4699-849d-7faef3b562c5"
      unitRef="usd">-127000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTEtMy0xLTEtMzI0ODg_b9808616-c564-4186-9b58-3cc6c179f55b"
      unitRef="usd">652000</us-gaap:ProvisionForDoubtfulAccounts>
    <ftk:InventoryPurchaseCommitmentProvisionAndSettlement
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTItMS0xLTEtMzI0ODg_13962c5f-bd1f-4e9f-92dd-d312e8e041c1"
      unitRef="usd">7633000</ftk:InventoryPurchaseCommitmentProvisionAndSettlement>
    <ftk:InventoryPurchaseCommitmentProvisionAndSettlement
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTItMy0xLTEtMzI0ODg_734de67a-b789-498b-b6e9-d3705e2bb31b"
      unitRef="usd">-9402000</ftk:InventoryPurchaseCommitmentProvisionAndSettlement>
    <us-gaap:InventoryWriteDown
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTMtMS0xLTEtMzI0ODg_1cecbff3-3fbc-41cd-839c-9db6a244e04e"
      unitRef="usd">623000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTMtMy0xLTEtMzI0ODg_8bbd0519-5c99-4162-9f56-f3d2c2ca1cc4"
      unitRef="usd">12261000</us-gaap:InventoryWriteDown>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTQtMS0xLTEtMzI0ODg_900b6da1-eb01-48ee-8767-55ddb1321ae1"
      unitRef="usd">8092000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTQtMy0xLTEtMzI0ODg_86e09172-7303-4609-97e6-741377bd8445"
      unitRef="usd">11706000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:FinanceLeaseImpairmentLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTUtMS0xLTEtMzI0ODg_4eea2ad0-06e5-4040-b978-edbdcb94df50"
      unitRef="usd">0</us-gaap:FinanceLeaseImpairmentLoss>
    <us-gaap:FinanceLeaseImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTUtMy0xLTEtMzI0ODg_04634819-0ef2-4000-a5a3-dfde7af9aca0"
      unitRef="usd">7434000</us-gaap:FinanceLeaseImpairmentLoss>
    <us-gaap:ImpairmentOfLongLivedAssetsToBeDisposedOf
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTYtMS0xLTEtMzI0ODg_a19b1fba-ed06-48e2-a8f0-4e25fe76e729"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsToBeDisposedOf>
    <us-gaap:ImpairmentOfLongLivedAssetsToBeDisposedOf
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTYtMy0xLTEtMzI0ODg_a400cb22-ba63-4319-86d3-ae2bafaa63d2"
      unitRef="usd">30178000</us-gaap:ImpairmentOfLongLivedAssetsToBeDisposedOf>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTctMS0xLTEtMzI0ODg_167a988d-62e2-4f0a-a0bb-711d98c95c43"
      unitRef="usd">0</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTctMy0xLTEtMzI0ODg_c3521af1-b6f2-42a5-bc5d-95c9b2a659c8"
      unitRef="usd">32363000</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:GainsLossesOnSalesOfAssets
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTgtMS0xLTEtMzI0ODg_59ebe827-2976-45d5-8b15-e9eeaee20aa5"
      unitRef="usd">94000</us-gaap:GainsLossesOnSalesOfAssets>
    <us-gaap:GainsLossesOnSalesOfAssets
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMTgtMy0xLTEtMzI0ODg_dbf678f1-55b4-447b-ad24-e7478377ae12"
      unitRef="usd">561000</us-gaap:GainsLossesOnSalesOfAssets>
    <ftk:NoncashLeaseExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjAtMS0xLTEtMzI0ODg_191afd3c-1e70-4311-816e-cfe536104364"
      unitRef="usd">279000</ftk:NoncashLeaseExpense>
    <ftk:NoncashLeaseExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjAtMy0xLTEtMzI0ODg_ae108f5b-3106-4f32-bb9b-00481c9f99ae"
      unitRef="usd">356000</ftk:NoncashLeaseExpense>
    <us-gaap:ShareBasedCompensation
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjEtMS0xLTEtMzI0ODg_4b2e1676-1614-43e1-95f0-0427e01e9f89"
      unitRef="usd">3757000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjEtMy0xLTEtMzI0ODg_c2c925a9-9718-46dc-a3b7-685a79497645"
      unitRef="usd">3044000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjItMS0xLTEtMzI0ODg_db0773f6-ffa5-48f6-a69c-c64d039cc00b"
      unitRef="usd">-56000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjItMy0xLTEtMzI0ODg_14b9741f-0d2f-4e4a-8e68-a36eebf6b004"
      unitRef="usd">-187000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjMtMS0xLTEtMzI0ODg_da762660-237b-4ff9-b668-4cc60535be63"
      unitRef="usd">881000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjMtMy0xLTEtMzI0ODg_24030e36-2ea9-4f40-8d0e-bb4467606721"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjgtMS0xLTEtMzI0ODg_5209d179-64ca-41ec-a6ad-5e163a6f508f"
      unitRef="usd">1406000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjgtMy0xLTEtMzI0ODg_c0b7112f-87c2-42d3-a1f5-fe0ab608fdec"
      unitRef="usd">-3556000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjktMS0xLTEtMzI0ODg_e116497b-9b23-4657-9a2e-7340429776fe"
      unitRef="usd">-1760000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMjktMy0xLTEtMzI0ODg_f20fcf1d-1582-4c54-8a71-e10feaf2b4ee"
      unitRef="usd">-3955000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzAtMS0xLTEtMzI0ODg_fddf6463-38eb-4c6f-896c-e057c262fa38"
      unitRef="usd">-381000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzAtMy0xLTEtMzI0ODg_94d8b6e9-d92a-45c7-aba6-aeb4e7cec099"
      unitRef="usd">-182000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzEtMS0xLTEtMzI0ODg_99880a11-a9df-415b-928e-1a2414abc111"
      unitRef="usd">613000</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzEtMy0xLTEtMzI0ODg_2018b1a0-c5af-46ad-aa90-1bd8a4ba3fc8"
      unitRef="usd">-1026000</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssets
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzItMS0xLTEtMzI0ODg_443922ea-f081-4231-8a4c-500c63783b6a"
      unitRef="usd">-4000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssets
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzItMy0xLTEtMzI0ODg_cb1951fe-f4ed-4d03-adea-37e4b7df0d22"
      unitRef="usd">16000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzMtMS0xLTEtMzI0ODg_89a32037-513b-4387-a317-9cd1239e7f63"
      unitRef="usd">1829000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzMtMy0xLTEtMzI0ODg_f3f1ffc7-749d-427d-851b-0c175eee21bd"
      unitRef="usd">-12323000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzQtMS0xLTEtMzI0ODg_8dae4328-7e7f-4dff-877f-77b190b88175"
      unitRef="usd">-1463000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzQtMy0xLTEtMzI0ODg_40e6e874-42e4-455d-b605-c49c9e99a312"
      unitRef="usd">-20662000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzUtMS0xLTEtMzI0ODg_d415c79d-05e2-45c0-97c6-589df6fb6d7f"
      unitRef="usd">-17000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzUtMy0xLTEtMzI0ODg_ee19ba25-410b-44a7-8fe7-20daec8138ba"
      unitRef="usd">84000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInInterestPayableNet
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzYtMS0xLTEtMzI0ODg_019b126c-d1a4-484b-8f21-5cb1e1f4b08d"
      unitRef="usd">48000</us-gaap:IncreaseDecreaseInInterestPayableNet>
    <us-gaap:IncreaseDecreaseInInterestPayableNet
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzYtMy0xLTEtMzI0ODg_21aa4a48-f965-45df-91a8-a724738cc9d7"
      unitRef="usd">34000</us-gaap:IncreaseDecreaseInInterestPayableNet>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzgtMS0xLTEtMzI0ODg_253319b3-c5dc-46bb-a5ce-65a9bc643a32"
      unitRef="usd">-25840000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfMzgtMy0xLTEtMzI0ODg_6d7ba22b-f447-45b8-8380-497d4bbee446"
      unitRef="usd">-47838000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <ftk:PaymentsToAcquirePropertyPlantAndEquipmentExcludingCapitalizedCost
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDAtMS0xLTEtMzI0ODg_f08a0b16-ec61-40b8-bd04-f345cdcc093d"
      unitRef="usd">39000</ftk:PaymentsToAcquirePropertyPlantAndEquipmentExcludingCapitalizedCost>
    <ftk:PaymentsToAcquirePropertyPlantAndEquipmentExcludingCapitalizedCost
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDAtMy0xLTEtMzI0ODg_4bb1f944-8816-4e2f-b37e-2278934fa45d"
      unitRef="usd">1425000</ftk:PaymentsToAcquirePropertyPlantAndEquipmentExcludingCapitalizedCost>
    <us-gaap:ProceedsFromDivestitureOfBusinesses
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDEtMS0xLTEtMzI0ODg_b704265b-770d-44a7-b7d8-36ecc2612370"
      unitRef="usd">0</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:ProceedsFromDivestitureOfBusinesses
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDEtMy0xLTEtMzI0ODg_0060a7e2-6d3e-46b2-be2e-fb5ed066f010"
      unitRef="usd">9907000</us-gaap:ProceedsFromDivestitureOfBusinesses>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDItMS0xLTEtMzI0ODg_76089e3e-08f8-4427-becd-359b3cf13d53"
      unitRef="usd">151000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDItMy0xLTEtMzI0ODg_45ae3b77-04dc-4006-a597-3fa483f20876"
      unitRef="usd">109000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDMtMS0xLTEtMzI0ODg_51f9f27f-2e32-4cb1-8edb-725872bdc725"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDMtMy0xLTEtMzI0ODg_5d486986-29f3-4b0b-8c81-3538586560de"
      unitRef="usd">26284000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <ftk:ProceedsFromPaymentForPatentsAndOtherIntangibleAssets
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDYtMS0xLTEtMzI0ODg_a5a673ca-a161-4655-9877-79d6c768c9be"
      unitRef="usd">0</ftk:ProceedsFromPaymentForPatentsAndOtherIntangibleAssets>
    <ftk:ProceedsFromPaymentForPatentsAndOtherIntangibleAssets
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDYtMy0xLTEtMzI0ODg_3afda6e8-ca09-4c69-9d6a-35b0816a6022"
      unitRef="usd">-8000</ftk:ProceedsFromPaymentForPatentsAndOtherIntangibleAssets>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDctMS0xLTEtMzI0ODg_bbc16035-75d4-4dcb-a71c-4c737e07afaf"
      unitRef="usd">112000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNDctMy0xLTEtMzI0ODg_cfce5228-0334-4992-a4c6-8b49397a7f9a"
      unitRef="usd">-17701000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <ftk:PaymentsForContingentConsiderationFinancing
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTQtMS0xLTEtMzM4MzE_0079ace1-c635-4772-b587-d6658df98299"
      unitRef="usd">0</ftk:PaymentsForContingentConsiderationFinancing>
    <ftk:PaymentsForContingentConsiderationFinancing
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTQtMy0xLTEtMzM2OTU_b7103773-a696-4403-8c20-e5e63002dcd7"
      unitRef="usd">1200000</ftk:PaymentsForContingentConsiderationFinancing>
    <us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTQtMS0xLTEtMzI0ODg_0e898fd4-3e6a-466b-9248-8b842f0e0412"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTQtMy0xLTEtMzI0ODg_98828cd5-b76f-456e-9448-9d2093370ace"
      unitRef="usd">4788000</us-gaap:ProceedsFromIssuanceOfOtherLongTermDebt>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTUtMS0xLTEtMzI0ODg_e90d8278-c607-4208-b9eb-f2ca5c5e190f"
      unitRef="usd">390000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTUtMy0xLTEtMzI0ODg_06355cbf-ff0b-40eb-9cb8-9e48b8d218f4"
      unitRef="usd">253000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromRepurchaseOfEquity
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTYtMS0xLTEtMzI0ODg_c0f8f120-c1d5-491a-9f82-02b3b42bc07c"
      unitRef="usd">80000</us-gaap:ProceedsFromRepurchaseOfEquity>
    <us-gaap:ProceedsFromRepurchaseOfEquity
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTYtMy0xLTEtMzI0ODg_4db39de1-30cf-48d0-96ea-4170a58fde7c"
      unitRef="usd">462000</us-gaap:ProceedsFromRepurchaseOfEquity>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTctMS0xLTEtMzI0ODg_456b0a1e-3061-4156-9e7b-b002985e8c1a"
      unitRef="usd">62000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNTctMy0xLTEtMzI0ODg_1fbdd230-e352-4496-8a19-1b32c96d9855"
      unitRef="usd">70000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjItMS0xLTEtMzI0ODg_fda22e31-d997-4147-b411-74504d108d98"
      unitRef="usd">-372000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjItMy0xLTEtMzI0ODg_e0d9bfec-0131-4bb1-a24a-698c6b2a7044"
      unitRef="usd">3727000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjctMS0xLTEtMzI0ODg_3b26bce9-9d92-457e-b98c-71d7552b31e6"
      unitRef="usd">100000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjctMy0xLTEtMzI0ODg_812e4c4f-25d3-4ab2-82ea-2989691b80e2"
      unitRef="usd">-102000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjgtMS0xLTEtMzI0ODg_0c6ab6dd-76ae-40b6-9fa7-66df06547823"
      unitRef="usd">-26000000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjgtMy0xLTEtMzI0ODg_ae64183a-20c4-42b8-abde-3bcda9c85ab0"
      unitRef="usd">-61914000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjktMS0xLTEtMzI0ODg_3369a035-c23e-450c-84bc-2082255d2728"
      unitRef="usd">38660000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNjktMy0xLTEtMzI0ODg_f396d8fe-f926-43a6-b1aa-8e640e97bd5f"
      unitRef="usd">100575000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalents
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzAtMS0xLTEtMzI0ODg_dc85d0ca-9b25-4b22-9bce-22aead280414"
      unitRef="usd">664000</us-gaap:RestrictedCashAndCashEquivalents>
    <us-gaap:RestrictedCashAndCashEquivalents
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzAtMy0xLTEtMzI0ODg_594d365e-bed2-4828-be6b-f199f46c21f0"
      unitRef="usd">663000</us-gaap:RestrictedCashAndCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzEtMS0xLTEtMzI0ODg_932d033b-cc68-410c-afec-e1587e4a2fb3"
      unitRef="usd">39324000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzEtMy0xLTEtMzI0ODg_942bc8cb-374c-4101-b687-17d7121d5a9d"
      unitRef="usd">101238000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzItMS0xLTEtMzI0ODg_f03e8fd4-e0cf-4946-8edc-6e093168a0aa"
      unitRef="usd">11534000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzItMy0xLTEtMzI0ODg_db5da2d6-555d-45f5-81b1-bd5c11ecb748"
      unitRef="usd">38660000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalents
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzMtMS0xLTEtMzI0ODg_bbbefccc-b4f9-4d72-a561-156970244f85"
      unitRef="usd">1790000</us-gaap:RestrictedCashAndCashEquivalents>
    <us-gaap:RestrictedCashAndCashEquivalents
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzMtMy0xLTEtMzI0ODg_9308560a-3166-4b34-91e5-e25ff504976c"
      unitRef="usd">664000</us-gaap:RestrictedCashAndCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzQtMS0xLTEtMzI0ODg_d7fbca53-2670-41d6-9a62-9cd0a385bd07"
      unitRef="usd">13324000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8yOC9mcmFnOjg0ZTdiYzlmMDQ2MjQ4ZTNiYTUzMzNmODA0ODI5MWM1L3RhYmxlOjZlYjI1MTM0NDQ1MTQ5NjE5ZDNhY2UyM2RmZGUxMTFlL3RhYmxlcmFuZ2U6NmViMjUxMzQ0NDUxNDk2MTlkM2FjZTIzZGZkZTExMWVfNzQtMy0xLTEtMzI0ODg_caac06d4-fdc2-405d-a9eb-4637eea48a3b"
      unitRef="usd">39324000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:SharesIssued
      contextRef="i446ee9dca17040ba94d02de19a50ad15_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy0xLTEtMS0zMjQ4OA_1293731a-7f2d-4225-b9e2-5dfc7571b221"
      unitRef="shares">78669000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i446ee9dca17040ba94d02de19a50ad15_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy0zLTEtMS0zMjQ4OA_68c8be05-f2fb-475b-8957-dbcc3843c9d7"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="i65c3ad04c4704af291c37d70c75d05de_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy01LTEtMS0zMjQ4OA_11fdfd33-d5c9-46b1-a525-1b9ccf294d98"
      unitRef="shares">5581000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i65c3ad04c4704af291c37d70c75d05de_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy03LTEtMS0zMjQ4OA_ded00b20-7f98-4cdb-9b3f-b2991ecb7109"
      unitRef="usd">-33851000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i32c5353010a74e93a58ef3c0a62e7984_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy05LTEtMS0zMjQ4OA_ec6ff33d-86bf-4947-a2ba-3be73e64e6ff"
      unitRef="usd">359721000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id4545a044a034bfa83699ad71af932b1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy0xMS0xLTEtMzI0ODg_ea8ba769-5d5c-4ec7-a53b-e8ab242e00a1"
      unitRef="usd">-19000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i94b89a3460b44b1f870f8c814628789f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy0xMy0xLTEtMzI0ODg_ca00813a-d7e2-496d-ac38-c693da3f7295"
      unitRef="usd">-278688000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMy0xNy0xLTEtMzI0ODg_1ddd39c6-a8b5-442e-a361-9bb11d8cea25"
      unitRef="usd">47171000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i229b456971184301929b24b0af40b80c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzAtMTMtMS0xLTMyNDg4_d2a2ed25-b130-4f73-a620-c1c12c52c42a"
      unitRef="usd">-30526000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzAtMTctMS0xLTMyNDg4_e9444cbf-9267-43fa-8162-b956a85e0d40"
      unitRef="usd">-30526000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="if126b4fb7f924b1c84650a3dcf30b45c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzEtMTEtMS0xLTMyNDg4_07af8a94-879b-4ab5-ad39-ecd01d5d7eab"
      unitRef="usd">100000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzEtMTctMS0xLTMyNDg4_f6107568-337e-4961-9876-83d8882cee0d"
      unitRef="usd">100000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i4479172fdd4b44ee823d4c6714b14bf2_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzMtNS0xLTEtMzI0ODg_787a7acb-a210-420b-b704-a11124006cc0"
      unitRef="shares">136000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i3c66e82c052a4103a61c361597766d0e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzMtOS0xLTEtMzI0ODg_7e8ccea3-e1ba-41a1-9c15-bb3641120309"
      unitRef="usd">80000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzMtMTctMS0xLTMyNDg4_a3c6e473-1830-4005-82e7-ce0a68b2a566"
      unitRef="usd">80000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="i23d35ce7ea99411ab6ae9e0c31cf5281_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzctMS0xLTEtMzI0ODg_9b743795-bbc3-4a48-a041-525cc3f481d0"
      unitRef="shares">1702000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited
      contextRef="i23d35ce7ea99411ab6ae9e0c31cf5281_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzgtMS0xLTEtMzI0ODg_2357fc7e-b9f4-47ff-827e-ad430cfa891b"
      unitRef="shares">284000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited
      contextRef="i4479172fdd4b44ee823d4c6714b14bf2_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzgtNS0xLTEtMzI0ODg_a571f861-c394-43e4-950c-4a371d99a63f"
      unitRef="shares">422000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited>
    <ftk:StockIssuedDuringPeriodSharesRestrictedStockAwardVested
      contextRef="i23d35ce7ea99411ab6ae9e0c31cf5281_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfMzktMS0xLTEtNDkyMzg_ec029062-4b38-4459-923e-4f34c0cb7ace"
      unitRef="shares">86000</ftk:StockIssuedDuringPeriodSharesRestrictedStockAwardVested>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i3c66e82c052a4103a61c361597766d0e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDAtOS0xLTEtMzI0ODg_30808a8a-f7c9-4384-aa83-cecf6bd2e999"
      unitRef="usd">3757000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDAtMTctMS0xLTMyNDg4_2a5cc607-9311-4b2c-a7d5-213d71398dfc"
      unitRef="usd">3757000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <ftk:ExcessTaxBenefitRelatedToShareBasedAwardsShares
      contextRef="i23d35ce7ea99411ab6ae9e0c31cf5281_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDEtMS0xLTEtNDQ2ODU_12cb7ddf-f281-4179-bf29-0379aa0e2016"
      unitRef="shares">76000</ftk:ExcessTaxBenefitRelatedToShareBasedAwardsShares>
    <ftk:ExcessTaxBenefitRelatedToShareBasedAwardsShares
      contextRef="i4479172fdd4b44ee823d4c6714b14bf2_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDEtNS0xLTEtMzI0ODg_efb7bf33-b33f-4c34-84e2-f75de1b8088f"
      unitRef="shares">155000</ftk:ExcessTaxBenefitRelatedToShareBasedAwardsShares>
    <ftk:ExcessTaxBenefitRelatedToShareBasedAwardsValue
      contextRef="i4479172fdd4b44ee823d4c6714b14bf2_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDEtNy0xLTEtMzI0ODg_5026d5bf-5365-49a8-987c-dad00dc1d88f"
      unitRef="usd">273000</ftk:ExcessTaxBenefitRelatedToShareBasedAwardsValue>
    <ftk:ExcessTaxBenefitRelatedToShareBasedAwardsValue
      contextRef="i3c66e82c052a4103a61c361597766d0e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDEtOS0xLTEtMzI0ODg_d767d9d0-bec1-4a50-beba-a1183af57679"
      unitRef="usd">150000</ftk:ExcessTaxBenefitRelatedToShareBasedAwardsValue>
    <ftk:ExcessTaxBenefitRelatedToShareBasedAwardsValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDEtMTctMS0xLTMyNDg4_087f75c1-4519-42d3-b5a1-e3b3ecfc9239"
      unitRef="usd">423000</ftk:ExcessTaxBenefitRelatedToShareBasedAwardsValue>
    <us-gaap:StockIssuedDuringPeriodSharesOther
      contextRef="i23d35ce7ea99411ab6ae9e0c31cf5281_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtMS0xLTEtMzI0ODg_270f5f50-b4b9-48cd-9526-7efa4f8e13f7"
      unitRef="shares">613000</us-gaap:StockIssuedDuringPeriodSharesOther>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="i4479172fdd4b44ee823d4c6714b14bf2_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtNy0xLTEtNDA5NzU_c18c0299-8c1b-478b-9d09-03d00c589625"
      unitRef="usd">24000</us-gaap:StockIssuedDuringPeriodValueOther>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="i3c66e82c052a4103a61c361597766d0e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtOS0xLTEtNDA5NzU_ef47c732-a930-415a-acb7-238260399186"
      unitRef="usd">9000</us-gaap:StockIssuedDuringPeriodValueOther>
    <us-gaap:StockIssuedDuringPeriodValueOther
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtMTctMS0xLTQwOTc1_59c731ae-7122-485f-899c-f1ecc29947be"
      unitRef="usd">33000</us-gaap:StockIssuedDuringPeriodValueOther>
    <us-gaap:SharesIssued
      contextRef="id008ef77fc7c400fa2cb9ac322c304e4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtMS0xLTEtMzI0ODg_07877331-2018-459e-beba-6b7e54956653"
      unitRef="shares">79484000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="id008ef77fc7c400fa2cb9ac322c304e4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtMy0xLTEtMzI0ODg_fa042477-cfc5-40ca-9d79-c385b04d12e8"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="iee260a5ff7754a4d9ad07aece59bb8fc_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtNS0xLTEtMzI0ODg_941ef2b3-007b-4d23-9af7-b6d0d8548d6f"
      unitRef="shares">6022000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="iee260a5ff7754a4d9ad07aece59bb8fc_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtNy0xLTEtMzI0ODg_db43d5d6-3b6d-402e-9e93-7b58e20abfa5"
      unitRef="usd">-34100000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1db412219c26431185491f35741d32dc_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtOS0xLTEtMzI0ODg_bcee4b0d-1f3e-4f00-968e-d5deb12b2eba"
      unitRef="usd">363417000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i4f999d5eaa0646b39e8c5854fb0abaa5_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtMTEtMS0xLTMyNDg4_fdb02c11-da48-42ed-9ca3-279028d25610"
      unitRef="usd">81000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8267cf102f1e4dbe92c757fc3dab5df7_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtMTMtMS0xLTMyNDg4_de299c6f-8743-4feb-aef3-31bc422ec172"
      unitRef="usd">-309214000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDUtMTctMS0xLTMyNDg4_511478a2-da5b-418e-8b71-12821f730879"
      unitRef="usd">20192000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="i536477a857ac4ad989025a6c01a85f58_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi0xLTEtMS0zMjQ4OA_3fc7cc19-7400-4b34-96d1-d82cbb24e32f"
      unitRef="shares">63657000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i536477a857ac4ad989025a6c01a85f58_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi0zLTEtMS0zMjQ4OA_a3f365d3-358b-4915-b0e2-333f2757b23f"
      unitRef="usd">6000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="id766658aea6d4299b3d7f85456d7a580_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi01LTEtMS0zMjQ4OA_a6e7dcb5-71aa-4dcc-ad6b-679ebe8c1972"
      unitRef="shares">4145000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="id766658aea6d4299b3d7f85456d7a580_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi03LTEtMS0zMjQ4OA_d5929522-e450-44af-a536-654e0dc75f15"
      unitRef="usd">-33484000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie744cbfa5d87496a84a088f56b93ec51_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi05LTEtMS0zMjQ4OA_8985ab2f-a01a-4c45-9f24-e964e1140dc8"
      unitRef="usd">347564000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9589d230f2c84bd19e90ac038c23fea3_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi0xMS0xLTEtMzI0ODg_8e00ca29-146f-4e77-8715-0216db808d1b"
      unitRef="usd">181000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i09ae2d696904415fbf4a7d2a01e859e2_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi0xMy0xLTEtMzI0ODg_e610ce9d-cd9a-4527-8489-f86ec5b48cc4"
      unitRef="usd">-142238000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMi0xNy0xLTEtMzI0ODg_8109a780-9081-4b86-bf58-0e993fc55f0e"
      unitRef="usd">172029000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i863d52673bb8437ca42af9bda286d5c9_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzUtMTMtMS0xLTMyNDg4_34abc876-fa76-477f-92ad-ac6731d559f8"
      unitRef="usd">-136450000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzUtMTctMS0xLTMyNDg4_82ae76d9-e1c6-48b9-bede-afa19258e7d3"
      unitRef="usd">-136450000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="i43ae1b26d5554c84b921b1519bcb346f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzYtMTEtMS0xLTMyNDg4_2b09b0fb-f683-4b72-a343-a353a3371037"
      unitRef="usd">-200000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzYtMTctMS0xLTMyNDg4_44bcac6c-ab6b-4f66-9e8e-3bc4aa4ebe3a"
      unitRef="usd">-200000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzctMS0xLTEtMzM0NDg_378b1dea-ef07-4e37-8ad8-072f63cfcd50"
      unitRef="shares">200000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i0fef54d40e2a445c8c0c43f1ce0295b3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzctOS0xLTEtMzM0NTI_fd6bf2e8-cd3c-4c9d-9c04-2e54b3e4b8a4"
      unitRef="usd">339000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzctMTctMS0xLTMzNDU0_3834d0a3-6c09-47fa-b889-65a084abd6d8"
      unitRef="usd">339000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzgtNS0xLTEtMzI0ODg_557b2f82-e81c-465e-9030-da055662755a"
      unitRef="shares">78000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i0fef54d40e2a445c8c0c43f1ce0295b3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzgtOS0xLTEtMzI0ODg_e24556b8-03a9-499c-b380-642e8674857d"
      unitRef="usd">123000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfMzgtMTctMS0xLTMyNDg4_853b2f08-7099-4212-93ff-6d7b6ef248f8"
      unitRef="usd">123000</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDItMS0xLTEtMzI0ODg_45177405-e9f3-4563-86b9-a91357c5df67"
      unitRef="shares">3201000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDItMy0xLTEtMzM0NDQ_827035b4-2b16-4812-84ff-5263f7c521ac"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDItMTctMS0xLTMyNDg4_34820f7e-36be-4f60-af92-6e38693a07b4"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited
      contextRef="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDMtNS0xLTEtMzI0ODg_6374fe01-94bf-40b0-a428-9917cbcbc738"
      unitRef="shares">1302000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDQtNS0xLTEtMzI0ODg_c6db0701-e3ee-4382-9f25-8f004da9b537"
      unitRef="shares">146000</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDQtNy0xLTEtMzI0ODg_e813d443-cee3-4dac-8c1a-d842fde7f0ff"
      unitRef="usd">253000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDQtMTctMS0xLTMyNDg4_d741ed68-2bdc-42d1-bd6a-0ac4fb3dbdd6"
      unitRef="usd">253000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i0fef54d40e2a445c8c0c43f1ce0295b3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDUtOS0xLTEtMzI0ODg_a99c20b7-6246-4582-9201-f2dd5c772c93"
      unitRef="usd">3044000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDUtMTctMS0xLTMyNDg4_7aa69c95-8aae-42eb-9895-8c9d644c0798"
      unitRef="usd">3044000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <ftk:ExcessTaxBenefitRelatedToShareBasedAwardsShares
      contextRef="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDYtNS0xLTEtMzM0OTA_a0f4fc07-fba1-4b38-b513-66223d90197b"
      unitRef="shares">66000</ftk:ExcessTaxBenefitRelatedToShareBasedAwardsShares>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDktMS0xLTEtMzI0ODg_ee9d0364-968a-4e82-8597-b0b35ea86b5d"
      unitRef="shares">11500000</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDktMy0xLTEtMzI0ODg_77df5d8e-1126-4cf4-9f1d-b38765985656"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="i0fef54d40e2a445c8c0c43f1ce0295b3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDktOS0xLTEtMzI0ODg_02cfdec9-1d77-4de3-a103-1c07614899ce"
      unitRef="usd">8537000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNDktMTctMS0xLTMyNDg4_e3fd6c2e-f035-4058-a792-5ce11094bb97"
      unitRef="usd">8538000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i4714454aae9e4a36ba5c0af60fd77d24_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTEtMS0xLTEtMzM0ODI_e7817da4-66b4-410e-938d-30bf65c20bbb"
      unitRef="shares">111000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i5239a9daadf84c548b3af11430d5aa93_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTEtNy0xLTEtMzM0ODQ_dda086d2-bc72-4fc1-9511-bf3fcf77bc55"
      unitRef="usd">-114000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="i0fef54d40e2a445c8c0c43f1ce0295b3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTEtOS0xLTEtMzM0ODY_56fdc234-0586-4c3f-ba44-af2db918052b"
      unitRef="usd">114000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:SharesIssued
      contextRef="i446ee9dca17040ba94d02de19a50ad15_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtMS0xLTEtMzI0ODg_ba069e10-7b78-49cd-ac8d-a74278f4caee"
      unitRef="shares">78669000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i446ee9dca17040ba94d02de19a50ad15_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtMy0xLTEtMzI0ODg_4f1ae585-77b0-4f75-b5d7-f29ca6fe1993"
      unitRef="usd">8000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="i65c3ad04c4704af291c37d70c75d05de_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtNS0xLTEtMzI0ODg_30fb8190-0fa0-4c9f-a3c0-d2be7620c0f9"
      unitRef="shares">5581000</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="i65c3ad04c4704af291c37d70c75d05de_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtNy0xLTEtMzI0ODg_ef32fd89-b328-494d-a39c-582563834d5e"
      unitRef="usd">-33851000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i32c5353010a74e93a58ef3c0a62e7984_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtOS0xLTEtMzI0ODg_07a67c45-37a3-4295-ad1d-503fe94029a9"
      unitRef="usd">359721000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id4545a044a034bfa83699ad71af932b1_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtMTEtMS0xLTMyNDg4_b40d9722-823a-421d-ac2d-c3d680a19841"
      unitRef="usd">-19000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i94b89a3460b44b1f870f8c814628789f_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtMTMtMS0xLTMyNDg4_73463449-13e1-4337-9603-9b824f5cdfd1"
      unitRef="usd">-278688000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjA0NjllOWM3MWRlMTQzZDQ5YzAzNDNhNzc3MmVhNTg2L3RhYmxlcmFuZ2U6MDQ2OWU5YzcxZGUxNDNkNDljMDM0M2E3NzcyZWE1ODZfNTAtMTctMS0xLTMyNDg4_07dc8f97-d427-4d4c-83e7-a3b59e44cfca"
      unitRef="usd">47171000</us-gaap:StockholdersEquity>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfNjA4Nw_2e9195e9-b874-4197-b348-4cb15912c77e">Organization and Nature of Operations&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;General&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Flotek Industries, Inc. (&#x201c;Flotek&#x201d; or the &#x201c;Company&#x201d;) creates solutions to reduce the environmental impact of energy on air, water, land and people. A technology-driven, specialty green chemistry and data company, Flotek helps customers across industrial, commercial, and consumer markets improve their environmental performance. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s Chemistry Technologies (&#x201c;CT&#x201d;) segment develops, manufactures, packages, distributes, delivers, and markets green specialty chemicals that enhance the profitability of hydrocarbon producers and cleans surfaces in both commercial and personal settings to help reduce the spread of bacteria, viruses and germs. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s Data Analytics (&#x201c;DA&#x201d;) segment enables users to maximize the value of their hydrocarbon associated processes by providing analytics associated with their hydrocarbon streams in seconds rather than minutes or days. The real-time access to information prevents waste, reduces reprocessing and allows users to pursue automation of their hydrocarbon streams to maximize their profitability, while reducing their carbon footprint, energy consumption and emissions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company formed the DA segment during the second quarter of 2020, after acquiring JP3 Measurement, LLC (&#x201c;JP3&#x201d;). The Company&#x2019;s two operating segments, CT and DA, are both supported by its Research &amp;amp; Innovation advanced laboratory capabilities. For further discussion of our operations and segments, see Note 21, &#x201c;Business Segment, Geographic and Major Customer Information.&#x201d; For further discussion of the JP3 acquisition, see Note 3, &#x201c;Business Acquisition.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company was initially incorporated under the laws of the Province of British Columbia in 1985. In October 2001, the Company changed its corporate domicile to the State of Delaware.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Sources and Uses of Liquidity &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company currently funds its operations and growth primarily from cash on hand. The ability of the Company to grow and be competitive in the marketplace is dependent on the availability of adequate capital. Access to capital is dependent on the Company&#x2019;s operating cash flows, the monetization of non-core assets, and the availability of and access to debt and equity financing. The Company has a history of losses and negative cash flows from operations and expects to utilize a significant amount of cash in the following year. While we believe that our cash and liquid assets, including the actions taken subsequent to year end discussed below and in Note 22, &#x201c;Subsequent Events&#x201d;, will provide us with sufficient financial resources to fund operations and meet our capital requirements and anticipated obligations as they become due, uncertainty surrounding the long term stability and strength of the oil and gas markets or reduced spending by our customers could have a further negative impact on our liquidity.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 2, 2022, the Company completed a Private Investment in Public Equity (PIPE) transaction with a consortium of investors, including related parties, through the issuance of $21.2&#160;million aggregate of convertible notes  that resulted in net cash proceeds of approximately $19.5&#160;million.  Also, on February 2, 2022, the Company entered into a long-term supply agreement with ProFrac Services, LLC (the &#x201c;ProFrac Agreement&#x201d;) upon issuance of $10&#160;million of convertible notes.  Under the ProFrac Agreement, ProFrac Services, LLC is obligated to order chemicals from the Company at least equal to the greater of (a) the chemicals required for 33% of their hydraulic fracturing fleets and (b) a baseline measured by the first ten hydraulic fracturing fleets deployed by ProFrac Services, LLC.  Profrac shall pay to the company, as liquidated damages an amount equal to twenty-five percent (25%) of the difference between (i) the aggregate Purchase Price of the quantity of Products comprising the Minimum Purchase Obligation during such calendar year.  The term of the ProFrac Agreement is three years starting on April 1, 2022. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company also committed to plans to sell its warehouse facility in Monahans, Texas and its manufacturing facility in Waller, Texas.  These facilities were classified as held for sale as of December 31, 2021.  Subsequent to December 31, 2021, the Company executed a contract to sell its Waller facility for $4.2&#160;million of cash proceeds.  The sale is expected to close in April 2022. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Based on our cash and liquid assets, including the transactions subsequent to year end described above and in Note 22 Subsequent Events, we believe that our cash and liquid assets will provide us with sufficient financial resources to fund operations and meet our capital requirements and anticipated obligations as they become due. However, the Company cannot guarantee a sufficient level of cash flows in the future. The consolidated financial statements have been prepared assuming that the Company will continue as a going concern.&lt;/span&gt;&lt;/div&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="ia6a5a4c549b641659402a37ef31bb15f_D20200401-20200630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMTM2Ng_584454e8-fb5c-4a03-ac1e-a4bfe01070fb"
      unitRef="segment">2</us-gaap:NumberOfOperatingSegments>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="ida27b6c7cc934bf8a3546021fe7b8601_I20220202"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMjU4Mzg1MjMyNzMzNjY_cd239f7e-ff46-4688-b76e-bef285f11b5e"
      unitRef="usd">21200000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:SaleOfStockConsiderationReceivedOnTransaction
      contextRef="ib621503945654b7ba4373612056fdcd8_D20220202-20220202"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMjc0ODc3OTA4MTczNw_bf622e12-7488-4c67-8a36-b45e3ab2590a"
      unitRef="usd">19500000</us-gaap:SaleOfStockConsiderationReceivedOnTransaction>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="iac7fe4c8b33d4ad585f1d323e0e224ad_D20220202-20220202"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMjc0ODc3OTA4MTc1MA_fae1f12e-7a5b-47d0-868f-f43bf192b9c8"
      unitRef="usd">10000000</us-gaap:ProceedsFromConvertibleDebt>
    <ftk:MinimumChemicalPurchaseRequirementForHydraulicFracturingFleetsPercent
      contextRef="i7bdce430a3984185b32005357627aeb2_I20220202"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMjc0ODc3OTA4MTc2Mw_a0764990-7a71-4439-8c3d-b494eb6defcc"
      unitRef="number">0.33</ftk:MinimumChemicalPurchaseRequirementForHydraulicFracturingFleetsPercent>
    <ftk:ConditionalRevenueShortfallRateIFChemicalRequirementRateIsUnmet
      contextRef="i7bdce430a3984185b32005357627aeb2_I20220202"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMzg0ODI5MDcyMzYzNA_84f45926-224c-455e-8e7d-9d47c6a7678f"
      unitRef="number">0.25</ftk:ConditionalRevenueShortfallRateIFChemicalRequirementRateIsUnmet>
    <us-gaap:ProceedsFromSaleOfPropertyHeldForSale
      contextRef="if5302ebbc00a48a9af67d44a74dd3721_D20220401-20220430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zNy9mcmFnOjQ1OTk5MzU0MTQ0YzQyMWFhMjdjZmZmZTY2ZTUyNzgyL3RleHRyZWdpb246NDU5OTkzNTQxNDRjNDIxYWEyN2NmZmZlNjZlNTI3ODJfMjU4Mzg1MjMyNzMzNDc_14fca9d6-f372-45c7-b489-070f5060a773"
      unitRef="usd">4200000</us-gaap:ProceedsFromSaleOfPropertyHeldForSale>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzMA_6054aa2b-a06d-43b5-89de-92ca28da7864">Summary of Significant Accounting Policies&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Basis of Presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s consolidated financial statements have been prepared in accordance with the accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;). The consolidated financial statements include the accounts of Flotek Industries, Inc. and subsidiaries it controls. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All significant intercompany accounts and transactions have been eliminated in consolidation. The Company does not have investments in any unconsolidated subsidiaries.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash equivalents consist of highly liquid investments with maturities of three months or less at the date of purchase.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Management&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses a controlled disbursement account for its main cash account. Under this system, outstanding checks can be in excess of the cash balances at the bank before the disbursement account is funded, creating a book overdraft. Book overdrafts on this account are presented as a current liability in accounts payable in the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Cash&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s restricted cash consists of cash that the Company is contractually obligated to maintain in accordance with the terms of its credit card program with a financial institution and as of December 31, 2021 an amount held in escrow of $1.75&#160;million for amounts due under the terms of the legal settlement discussed in Note 15, Commitments and Contingencies. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Accounts Receivable and Allowance for Doubtful Accounts&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable arise from product sales and services and are stated at estimated net realizable value. This value incorporates an allowance for doubtful accounts to reflect any loss anticipated on accounts receivable balances. The Company regularly evaluates its accounts receivable to estimate amounts that will not be collected and records the appropriate provision for doubtful accounts as a charge to operating expenses. The allowance for doubtful accounts is based on a combination of the age of the receivables, individual customer circumstances, credit conditions, and historical write-offs and collections. The Company writes off specific accounts receivable when they are determined to be uncollectible.  The recovery of accounts receivable previously written off is recorded as a reduction to the provision for doubtful accounts charged to operating expense. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The majority of the Company&#x2019;s customers are engaged in the energy industry. The cyclical nature of the energy industry may affect customers&#x2019; operating performance and cash flows, which directly impact the Company&#x2019;s ability to collect on outstanding obligations. Additionally, certain customers are located in international areas that are inherently subject to risks of economic, political, and civil instability, which can impact the collectability of receivables.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in the allowance for doubtful accounts are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:82.163%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.287%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.939%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.585%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance, beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Charges to provision for doubtful accounts, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(127)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Write-offs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(530)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(863)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance, end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Inventories&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consist of raw materials and finished goods and are stated at the lower of cost determined using the weighted-average cost method, or net realizable value. Finished goods inventories include raw materials, direct labor and production overhead. The Company periodically reviews inventories on hand and current market conditions to determine if the cost of raw &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;materials and finished goods inventories exceed current market prices and impairs the cost basis of the inventory accordingly. Obsolete inventory or inventory in excess of management&#x2019;s estimated usage requirement is written down to its net realizable value if those amounts are determined to be less than cost.  Write-downs or write-offs of inventory are charged to cost of goods sold.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Property and equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost. The cost of ordinary maintenance and repair is charged to operating expense, while replacement of critical components and major improvements are capitalized. Depreciation or amortization of property and equipment, including right-of-use assets (&#x201c;ROU&#x201d;), is calculated using the straight-line method over the asset&#x2019;s estimated useful life as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:47.368%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.196%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.604%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Buildings and leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2-30 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7-10 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Transportation equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2-5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3-7 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment, including ROU assets, are reviewed for impairment whenever events or changes in circumstances indicate the carrying amount of an asset or asset group may not be recoverable.  If events or changes in circumstances indicate the carrying amount of an asset or asset group may not be recoverable, the Company first compares the carrying amount of an asset or asset group to the sum of the undiscounted future cash flows expected to result from the use and eventual disposal of the asset. If the carrying amount of an asset or asset group exceeds the sum of the undiscounted future cash flows expected to result from the use and eventual disposal of the asset, the Company will determine the fair value of the asset or asset group. The amount of impairment loss recognized is the excess of the asset or asset group&#x2019;s carrying amount over its fair value. Fair value is determined through various valuation techniques including discounted cash flow models, quoted market values, and third party independent appraisals, as considered necessary. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets to be disposed of are reported as assets held for sale at the lower of the carrying amount or the asset&#x2019;s fair value less cost to s&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ell and depreciation is ceased. Upon sale or other disposition of an asset, the Company recognizes a gain or loss on disposal measured as the difference between the net carrying amount of the asset and the net proceeds received.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill is the excess of cost of an acquired entity over the amounts assigned to identifiable assets acquired and liabilities assumed in a business combination. Goodwill is not subject to amortization but is tested for impairment annually on October 1 or more frequently if an event occurs or circumstances change that would indicate a potential impairment. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When performing the annual impairment test, the Company has the option to assess whether a goodwill impairment exists using either a qualitative or quantitative assessment. The qualitative assessment involves determining whether events or circumstances exist that indicate it is more likely than not that the fair value of a reporting unit is less than its carrying amount, including goodwill. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;If the qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying amount or if the Company elects not to perform a qualitative assessment, a quantitative impairment test is performed to determine whether goodwill impairment exists at the reporting unit.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The quantitative impairment test, used to identify both the existence of impairment and the amount of impairment loss, compares the estimated fair value of the reporting unit to its carrying amount, including goodwill. To determine fair value estimates, the Company uses the income approach based on discounted cash flow analyses, combined, when appropriate, with a market-based approach. Under the income approach, the fair value of the reporting unit was determined based on the present value of estimated future cash flows, discounted at an appropriate risk-adjusted rate. We used our internal forecasts, updated for recent events, to estimate future cash flows with cash flows beyond the specific operating plans estimated using a terminal value calculation, which incorporates historical and forecasted trends, including an estimate of long-term future growth rates, based on our most recent views of the long-term outlook for the reporting unit. We derive our discount rate using a capital asset pricing model and analyzing published rates for industries relevant to the reporting unit to estimate the cost of equity financing. We use discount rates that are commensurate with the risks and uncertainties inherent in the respective business and in our &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;internally developed forecasts. The market-based approach considers valuation comparisons of recent public sale transactions of similar businesses and earnings multiples of publicly traded businesses operating in industries consistent with the reporting unit. If the carrying amount of a reporting unit, including goodwill, exceeds its fair value, an impairment loss is recognized in an amount equal to that excess, limited to the amount of goodwill allocated to that reporting unit.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company categorizes financial assets and liabilities using a three-tier fair value hierarchy, based on the nature of the inputs used to determine fair value. Inputs refer broadly to assumptions that market participants would use to value an asset or liability and may be observable or unobservable. When determining the fair value of assets and liabilities, the Company uses the most reliable measurement available. See Note 13, &#x201c;Fair Value Measurements.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes revenue to depict the transfer of control of promised goods or services to its customers in an amount that reflects the consideration to which it expects to be entitled in exchange for those goods or services. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes revenue based on a five-step model when all of the following criteria have been met: (i) a contract with a customer exists, (ii) performance obligations have been identified, (iii) the price to the customer has been determined, (iv) the price to the customer has been allocated to the performance obligations, and (v) performance obligations are satisfied.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Products and services are sold with fixed or determinable prices. Certain sales include right of return provisions, which are considered when recognizing revenue and deferred accordingly. Deposits and other funds received in advance of delivery are deferred until the transfer of control is complete.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies several practical expedients including: &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Sales commissions are expensed as selling, general and administrative expenses when incurred because the amortization period is generally one year or less. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;The majority of the Company&#x2019;s services are short-term in nature with a contract term of one year or less.  As a result the Company does not disclose the transaction price allocated to remaining performance obligations. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;The Company&#x2019;s payment terms are short-term in nature with settlements of one year or less.  As a result the Company does not adjust the promised amount of consideration for the effects of a significant financing component. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;In most service contracts, the Company has the right to consideration from a customer in an amount that corresponds directly with the value to the customer of the Company&#x2019;s performance obligations completed to date and as such the Company recognizes revenue in the amount to which it has a right to invoice. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;The Company excludes from the measurement of the transaction price all taxes assessed by a governmental authority that are both imposed on and concurrent with a specific revenue-producing transaction and collected by the entity from a customer.  Such taxes are included in accrued liabilities on our consolidated balance sheet until remitted to the governmental agency.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Shipping and handling costs associated with outbound freight after control over a product has transferred to a customer are accounted for as a fulfillment cost and are included in cost of goods sold on our consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency Translation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial statements of foreign subsidiaries are prepared using the currency of the primary economic environment of the foreign subsidiaries as the functional currency. Assets and liabilities of foreign subsidiaries are translated into U.S. dollars at exchange rates in effect as of the end of identified reporting periods. Revenue and expense transactions are translated using the average monthly exchange rate for the reporting period. Resultant translation adjustments are recognized as other comprehensive income (loss) within stockholders&#x2019; equity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Comprehensive Loss&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Comprehensive loss encompasses all changes in stockholders&#x2019; equity, except those arising from investments from and distributions to stockholders. The Company&#x2019;s comprehensive loss includes consolidated net loss and foreign currency translation adjustments.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Research and Development Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expenditures for research activities relating to product development and improvement are charged to expense as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Taxes &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets and liabilities are recognized for temporary differences between financial statement carrying amounts and the tax bases of assets and liabilities and are measured using the tax rates expected to be in effect when the differences reverse. Deferred tax assets are also recognized for operating loss and tax credit carry forwards. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A valuation allowance is established when it is more likely than not that some portion or all of the deferred tax assets will not be realized.  The establishment of a valuation allowance requires significant judgment and is impacted by various estimates.  Both positive and negative evidence, as well as the objectivity and verifiability of that evidence, is considered in determining the appropriateness of recording a valuation allowance on deferred tax assets. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes the effect of income tax positions only if those positions are more likely than not of being sustained. Recognized income tax positions are measured at the largest amount that is greater than 50% likely of being realized. Changes in recognition or measurement are reflected in the period in which the change in judgment occurs. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s policy is to record interest and penalties related to uncertain tax positions as income tax expense.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense, related to stock options, restricted stock awards and restricted stock units, is recognized based on their grant-date fair values. The Company recognizes compensation expense, net of estimated forfeitures, on a straight-line basis over the requisite service period of the award. Estimated forfeitures are based on historical experience.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect reported amounts of assets and liabilities, disclosure of contingent assets and liabilities, and reported amounts of revenue and expenses. Actual results could differ from these estimates. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Significant items subject to estimates and assumptions include the carrying amount and useful lives of property and equipment and intangible assets;  goodwill, property and equipment and intangible asset impairment assessments; allocation of purchase price in business combinations; stock-based compensation expense; and valuation allowances for accounts receivable, inventories, and deferred tax assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Reclassifications&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain prior year amounts in the consolidated statement of operations and consolidated statement of stockholders&#x2019; equity have been reclassified to conform to the current year presentation.. In the fourth quarter of 2021, the Company changed its financial statement presentation to report cost of goods sold and gross profit (loss) and eliminated the reporting of operating expenses (excluding depreciation and amortization) on the consolidated statements of operations to conform to customary industry reporting practices. In connection with this change in presentation, the Company reclassified selling costs of $6.5&#160;million to selling, general and administrative expenses which were previously reported in operating expenses for the year ended December 31, 2020.  The reclassifications and change in presentation of the statements of operations did not impact previously recorded net loss and stockholders&#x2019; equity.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company includes the results of operations of its acquisitions in its consolidated results, prospectively from the date of acquisition. The Company allocates the fair value of purchase consideration to the assets acquired, liabilities assumed and any non-controlling interests in the acquired entity generally based on their fair values at the acquisition date. The excess of the fair value of purchase consideration over the fair value of these assets acquired, liabilities assumed and any non-controlling interests in the acquired entity is recorded as goodwill. The primary items that generate goodwill include the value of the synergies between the acquired company and Flotek and the value of the acquired assembled workforce. Acquisition-related expenses are recognized separately from the business acquisition and are recognized as expenses as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes to U.S. GAAP are established by the Financial Accounting Standards Board (&#x201c;FASB&#x201d;). We evaluate the applicability and impact of all authoritative guidance issued by the FASB. Guidance not listed below was assessed and determined to be either not applicable, clarifications of items listed below, immaterial or already adopted by the Company.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;New Accounting Standards Issued But Not Adopted as of December 31, 2021&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2019-12, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&#x201d; This standard removes specific exceptions to the general principles in &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Topic 740. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The pronouncement is effective for fiscal years beginning after December 15, 2020, including interim periods within those fiscal years, with early adoption permitted for public companies for periods in which financial statements have not yet been issued.  The Company evaluated the impact of this standard and determined that there is no impact on the consolidated financial statements and related disclosures. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2016-13, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Measurement of Credit Losses on Financial Instruments&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&#x201d; This standard replaces the incurred loss impairment methodology in current U.S. GAAP with a methodology that reflects estimates of expected credit losses over their contractual life that are recorded at inception based on historical information, current conditions, and reasonable and supportable forecasts. The pronouncement is effective for smaller reporting companies for fiscal years beginning after December 15, 2022. The Company is currently evaluating the impact of this standard, including subsequent amendments, on the consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2020-06, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Accounting for Convertible Instruments and Contracts in an Entity&#x2019;s Own Equity.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x201d; This standard changes the accounting for convertible instruments by reducing the number of accounting models, amends the requirements for a conversion option to be classified in equity and amends diluted earnings per share calculations for certain convertible debt instruments.   The pronouncement is effective for smaller reporting companies for fiscal years beginning after December 15, 2023, with early adoption allowed for fiscal years beginning after December 15, 2020.  The Company has adopted this standard on January 1, 2022, and is evaluating the impact of this standard, on the consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2021-10, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Government Assistance (Topic 832); Disclosures by Business Entities about Government Assistance.&#x201d; &lt;/span&gt;This standard provides guidance on disclosures for transactions with a government that are accounted for by applying a grant or contribution accounting model by analogy.  The pronouncement is effective for fiscals years beginning after December 15, 2021.  The Company is currently evaluating the impact of this standard on the consolidated financial statements and related disclosures.</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzMQ_51b4660d-387b-4391-b665-ae9d19c6ccbc">Basis of PresentationThe Company&#x2019;s consolidated financial statements have been prepared in accordance with the accounting principles generally accepted in the United States of America (&#x201c;U.S. GAAP&#x201d;).</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzNA_002fc2c9-dc9f-4009-be37-89715ce1928e">The consolidated financial statements include the accounts of Flotek Industries, Inc. and subsidiaries it controls.</us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzMg_c0352a5a-5e78-4cb2-ae51-601379d6d279">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash equivalents consist of highly liquid investments with maturities of three months or less at the date of purchase.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Cash Management&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company uses a controlled disbursement account for its main cash account. Under this system, outstanding checks can be in excess of the cash balances at the bank before the disbursement account is funded, creating a book overdraft. Book overdrafts on this account are presented as a current liability in accounts payable in the consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzNg_b4055f2c-e4b4-440e-8810-5f62efd11911">Restricted CashThe Company&#x2019;s restricted cash consists of cash that the Company is contractually obligated to maintain in accordance with the terms of its credit card program with a financial institution</us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue
      contextRef="ia9285826bd7b4f9e97acea9ed93f9205_I20211231"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjUyOA_dd89fa6c-ad0b-48bb-bfe9-bce4b26381b2"
      unitRef="usd">1750000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzNw_3fd55470-fa66-45a0-a3a0-aba19b31ca84">&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Accounts Receivable and Allowance for Doubtful Accounts&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accounts receivable arise from product sales and services and are stated at estimated net realizable value. This value incorporates an allowance for doubtful accounts to reflect any loss anticipated on accounts receivable balances. The Company regularly evaluates its accounts receivable to estimate amounts that will not be collected and records the appropriate provision for doubtful accounts as a charge to operating expenses. The allowance for doubtful accounts is based on a combination of the age of the receivables, individual customer circumstances, credit conditions, and historical write-offs and collections. The Company writes off specific accounts receivable when they are determined to be uncollectible.  The recovery of accounts receivable previously written off is recorded as a reduction to the provision for doubtful accounts charged to operating expense. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The majority of the Company&#x2019;s customers are engaged in the energy industry. The cyclical nature of the energy industry may affect customers&#x2019; operating performance and cash flows, which directly impact the Company&#x2019;s ability to collect on outstanding obligations. Additionally, certain customers are located in international areas that are inherently subject to risks of economic, political, and civil instability, which can impact the collectability of receivables.&lt;/span&gt;&lt;/div&gt;</us-gaap:ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy>
    <us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE1Ng_20cf9d2d-38dd-4675-b793-9c0d2f262c8e">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in the allowance for doubtful accounts are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:82.163%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.287%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.939%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.585%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance, beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,527&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Charges to provision for doubtful accounts, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(127)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;652&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Write-offs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(530)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(863)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance, end of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,316&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfMi0xLTEtMS0zNDE1Ng_10f15e94-3f34-4010-b031-bd93699b933d"
      unitRef="usd">1316000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfMi0zLTEtMS0zNDE1Ng_24bc1add-1cee-49e5-932e-9f19df636515"
      unitRef="usd">1527000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfMy0xLTEtMS0zNDE1Ng_5b935a1a-f0e1-453c-9265-4290fb8fdedf"
      unitRef="usd">-127000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfMy0zLTEtMS0zNDE1Ng_f979e694-5c45-42ec-b8a3-68e341ee0aea"
      unitRef="usd">652000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfNC0xLTEtMS0zNDE1Ng_10e3a046-c15f-4619-8837-3639650641ab"
      unitRef="usd">530000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfNC0zLTEtMS0zNDE1Ng_6a817711-db3a-47d2-ba9a-1fc6761395b6"
      unitRef="usd">863000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfNS0xLTEtMS0zNDE1Ng_d7239bd8-7429-48f9-8939-24349ac9b073"
      unitRef="usd">659000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjA1MDI0ZTMwY2QyZDRkNDRhOWNjNmZjMmE1NGI5ZWIzL3RhYmxlcmFuZ2U6MDUwMjRlMzBjZDJkNGQ0NGE5Y2M2ZmMyYTU0YjllYjNfNS0zLTEtMS0zNDE1Ng_933de05e-e332-4560-8b15-1b8848914c3f"
      unitRef="usd">1316000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzOA_93ad3125-56c1-449e-8443-9cbb37fb33ab">&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Inventories&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consist of raw materials and finished goods and are stated at the lower of cost determined using the weighted-average cost method, or net realizable value. Finished goods inventories include raw materials, direct labor and production overhead. The Company periodically reviews inventories on hand and current market conditions to determine if the cost of raw &lt;/span&gt;&lt;/div&gt;materials and finished goods inventories exceed current market prices and impairs the cost basis of the inventory accordingly. Obsolete inventory or inventory in excess of management&#x2019;s estimated usage requirement is written down to its net realizable value if those amounts are determined to be less than cost.  Write-downs or write-offs of inventory are charged to cost of goods sold.</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjEzOQ_9d2d063d-05f0-4139-b1bd-e76b45f34599">Property and equipmentProperty and equipment are stated at cost. The cost of ordinary maintenance and repair is charged to operating expense, while replacement of critical components and major improvements are capitalized.</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE1Nw_1b2e6b55-59da-48bf-b86b-da7cd0d55444">Depreciation or amortization of property and equipment, including right-of-use assets (&#x201c;ROU&#x201d;), is calculated using the straight-line method over the asset&#x2019;s estimated useful life as follows:&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:47.368%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.196%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.604%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Buildings and leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2-30 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7-10 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20 years&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Transportation equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2-5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3-7 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.374%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,415&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Buildings and leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,473&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,364&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Transportation equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,176&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,396&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,100)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,454)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i070d310e8fdb4f4a9bb99d8c0947fe52_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfMC0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOjhkODIzZWFjNjkxNDRkMjZhMTVlNmE5NDJhNmYzNzgwXzQ_178c67df-fc01-4f8d-8a54-56b40d2a5779">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ieeadb71f6a4745988d3f638feabddfcf_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfMC0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOjhkODIzZWFjNjkxNDRkMjZhMTVlNmE5NDJhNmYzNzgwXzc_f4a029a8-9351-4cf8-840d-9a080b9e4c0c">P30Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i87257ff58454495a9b7773054b4499d0_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfMS0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOmY0NjU3NjllMmFjMDQ0ODM5N2IxMGViNGVmNGZiZjgwXzQ_82534161-7658-4a33-9317-367236b20dfe">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i4f8921874def44228d45d32df93afbd0_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfMS0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOmY0NjU3NjllMmFjMDQ0ODM5N2IxMGViNGVmNGZiZjgwXzc_b0048f88-a807-4d8e-8334-2c74d45e720c">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i4469e785899d4daaa375584f1dc85b41_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfMi0xLTEtMS0zNDE1Ng_d92529a2-63d4-465b-92b1-62bf14ec50eb">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i1e0db3ae98cb4c61b376e1b3660afdb2_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfMy0xLTEtMS0zNDgwMQ_42ca9a82-99a8-4e0a-9f22-e7e8eae4f71c">P20Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ia84d7d00c67c4833897e3d2524abaa1c_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfNC0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOjI2ZTk0OTBjZjc4ZjQ1MzY5ZGY3ODM2MTQ1MmJhNTY3XzQ_afbeb457-c40c-4d42-b9f8-ba0b58fd3b36">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i7fafc4de9f0d4befb5c2cfbd9c6d8766_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfNC0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOjI2ZTk0OTBjZjc4ZjQ1MzY5ZGY3ODM2MTQ1MmJhNTY3Xzc_c09c91a7-39da-4fe5-9bfe-7ec88ae0379b">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i44e290d6efc14748b8c07bd2c07af6e8_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfNS0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOmUxZjJiMGVhMzI4ZTQ5NDA5ODJhYjRmMzUxNzk0YzM3XzQ_d6f805ba-9e33-429b-a288-20639148bf83">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i60351c46f884487fbe6e6d0a26ba0c61_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RhYmxlOjhlZTdmMTU1ZjRiNTQ0NDM4ZTI4YzgyMzAwZWZjMjM1L3RhYmxlcmFuZ2U6OGVlN2YxNTVmNGI1NDQ0MzhlMjhjODIzMDBlZmMyMzVfNS0xLTEtMS0zNDE1Ni90ZXh0cmVnaW9uOmUxZjJiMGVhMzI4ZTQ5NDA5ODJhYjRmMzUxNzk0YzM3Xzc_04f5c7b2-f855-4417-95ab-12cbd686513a">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0MA_2be1b684-a4a8-45c8-8b4e-ed1b148ba01c">&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Goodwill is the excess of cost of an acquired entity over the amounts assigned to identifiable assets acquired and liabilities assumed in a business combination. Goodwill is not subject to amortization but is tested for impairment annually on October 1 or more frequently if an event occurs or circumstances change that would indicate a potential impairment. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;When performing the annual impairment test, the Company has the option to assess whether a goodwill impairment exists using either a qualitative or quantitative assessment. The qualitative assessment involves determining whether events or circumstances exist that indicate it is more likely than not that the fair value of a reporting unit is less than its carrying amount, including goodwill. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;If the qualitative assessment indicates that it is more likely than not that the fair value of a reporting unit is less than its carrying amount or if the Company elects not to perform a qualitative assessment, a quantitative impairment test is performed to determine whether goodwill impairment exists at the reporting unit.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The quantitative impairment test, used to identify both the existence of impairment and the amount of impairment loss, compares the estimated fair value of the reporting unit to its carrying amount, including goodwill. To determine fair value estimates, the Company uses the income approach based on discounted cash flow analyses, combined, when appropriate, with a market-based approach. Under the income approach, the fair value of the reporting unit was determined based on the present value of estimated future cash flows, discounted at an appropriate risk-adjusted rate. We used our internal forecasts, updated for recent events, to estimate future cash flows with cash flows beyond the specific operating plans estimated using a terminal value calculation, which incorporates historical and forecasted trends, including an estimate of long-term future growth rates, based on our most recent views of the long-term outlook for the reporting unit. We derive our discount rate using a capital asset pricing model and analyzing published rates for industries relevant to the reporting unit to estimate the cost of equity financing. We use discount rates that are commensurate with the risks and uncertainties inherent in the respective business and in our &lt;/span&gt;&lt;/div&gt;internally developed forecasts. The market-based approach considers valuation comparisons of recent public sale transactions of similar businesses and earnings multiples of publicly traded businesses operating in industries consistent with the reporting unit. If the carrying amount of a reporting unit, including goodwill, exceeds its fair value, an impairment loss is recognized in an amount equal to that excess, limited to the amount of goodwill allocated to that reporting unit.</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0Mw_8d00dfd1-25da-4cf4-ba74-0b8ae371870c">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company categorizes financial assets and liabilities using a three-tier fair value hierarchy, based on the nature of the inputs used to determine fair value. Inputs refer broadly to assumptions that market participants would use to value an asset or liability and may be observable or unobservable. When determining the fair value of assets and liabilities, the Company uses the most reliable measurement available. See Note 13, &#x201c;Fair Value Measurements.&#x201d;&lt;/span&gt;&lt;/div&gt;Fair Value Measurements&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The Company categorizes financial assets and liabilities into the three levels of the fair value hierarchy. The hierarchy prioritizes the inputs to valuation techniques used to measure fair value and bases categorization within the hierarchy on the lowest level of input that is available and significant to the fair value measurement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 &#x2014; Quoted prices in active markets for identical assets or liabilities;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 &#x2014; Observable inputs other than Level 1, such as quoted prices for similar assets or liabilities, quoted prices in markets that are not active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 &#x2014; Significant unobservable inputs that are supported by little or no market activity or that are based on the reporting entity&#x2019;s assumptions about the inputs.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0NQ_2cb16315-3b15-4996-99c4-3f25b3899122">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes revenue to depict the transfer of control of promised goods or services to its customers in an amount that reflects the consideration to which it expects to be entitled in exchange for those goods or services. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes revenue based on a five-step model when all of the following criteria have been met: (i) a contract with a customer exists, (ii) performance obligations have been identified, (iii) the price to the customer has been determined, (iv) the price to the customer has been allocated to the performance obligations, and (v) performance obligations are satisfied.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Products and services are sold with fixed or determinable prices. Certain sales include right of return provisions, which are considered when recognizing revenue and deferred accordingly. Deposits and other funds received in advance of delivery are deferred until the transfer of control is complete.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company applies several practical expedients including: &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Sales commissions are expensed as selling, general and administrative expenses when incurred because the amortization period is generally one year or less. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;The majority of the Company&#x2019;s services are short-term in nature with a contract term of one year or less.  As a result the Company does not disclose the transaction price allocated to remaining performance obligations. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;The Company&#x2019;s payment terms are short-term in nature with settlements of one year or less.  As a result the Company does not adjust the promised amount of consideration for the effects of a significant financing component. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;In most service contracts, the Company has the right to consideration from a customer in an amount that corresponds directly with the value to the customer of the Company&#x2019;s performance obligations completed to date and as such the Company recognizes revenue in the amount to which it has a right to invoice. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;The Company excludes from the measurement of the transaction price all taxes assessed by a governmental authority that are both imposed on and concurrent with a specific revenue-producing transaction and collected by the entity from a customer.  Such taxes are included in accrued liabilities on our consolidated balance sheet until remitted to the governmental agency.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Shipping and handling costs associated with outbound freight after control over a product has transferred to a customer are accounted for as a fulfillment cost and are included in cost of goods sold on our consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0Ng_6a1be53f-9f38-4f6d-a81c-67388e21f2b3">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency Translation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Financial statements of foreign subsidiaries are prepared using the currency of the primary economic environment of the foreign subsidiaries as the functional currency. Assets and liabilities of foreign subsidiaries are translated into U.S. dollars at exchange rates in effect as of the end of identified reporting periods. Revenue and expense transactions are translated using the average monthly exchange rate for the reporting period. Resultant translation adjustments are recognized as other comprehensive income (loss) within stockholders&#x2019; equity.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0Nw_fb357743-8d48-4333-ab0c-234692d6f0bb">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Comprehensive Loss&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Comprehensive loss encompasses all changes in stockholders&#x2019; equity, except those arising from investments from and distributions to stockholders. The Company&#x2019;s comprehensive loss includes consolidated net loss and foreign currency translation adjustments.&lt;/span&gt;&lt;/div&gt;</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0OA_ec389674-ef1b-4183-a1fa-e7137120a4d1">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Research and Development Costs&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Expenditures for research activities relating to product development and improvement are charged to expense as incurred.&lt;/span&gt;&lt;/div&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE0OQ_0c76f8ad-4048-41f9-8542-0780d9f4fbc1">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Income Taxes &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred tax assets and liabilities are recognized for temporary differences between financial statement carrying amounts and the tax bases of assets and liabilities and are measured using the tax rates expected to be in effect when the differences reverse. Deferred tax assets are also recognized for operating loss and tax credit carry forwards. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A valuation allowance is established when it is more likely than not that some portion or all of the deferred tax assets will not be realized.  The establishment of a valuation allowance requires significant judgment and is impacted by various estimates.  Both positive and negative evidence, as well as the objectivity and verifiability of that evidence, is considered in determining the appropriateness of recording a valuation allowance on deferred tax assets. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recognizes the effect of income tax positions only if those positions are more likely than not of being sustained. Recognized income tax positions are measured at the largest amount that is greater than 50% likely of being realized. Changes in recognition or measurement are reflected in the period in which the change in judgment occurs. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s policy is to record interest and penalties related to uncertain tax positions as income tax expense.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE1MA_405eb661-9af9-4ff5-a970-09256b004a3d">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense, related to stock options, restricted stock awards and restricted stock units, is recognized based on their grant-date fair values. The Company recognizes compensation expense, net of estimated forfeitures, on a straight-line basis over the requisite service period of the award. Estimated forfeitures are based on historical experience.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:UseOfEstimates
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE1MQ_71239e70-2b9f-45d0-8610-be08abb453f5">&lt;div style="margin-bottom:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect reported amounts of assets and liabilities, disclosure of contingent assets and liabilities, and reported amounts of revenue and expenses. Actual results could differ from these estimates. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Significant items subject to estimates and assumptions include the carrying amount and useful lives of property and equipment and intangible assets;  goodwill, property and equipment and intangible asset impairment assessments; allocation of purchase price in business combinations; stock-based compensation expense; and valuation allowances for accounts receivable, inventories, and deferred tax assets.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE1Mw_d6a8e2a8-21bb-4009-8d44-2fd5dc41ee8b">&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Reclassifications&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain prior year amounts in the consolidated statement of operations and consolidated statement of stockholders&#x2019; equity have been reclassified to conform to the current year presentation.. In the fourth quarter of 2021, the Company changed its financial statement presentation to report cost of goods sold and gross profit (loss) and eliminated the reporting of operating expenses (excluding depreciation and amortization) on the consolidated statements of operations to conform to customary industry reporting practices. In connection with this change in presentation, the Company reclassified selling costs of $6.5&#160;million to selling, general and administrative expenses which were previously reported in operating expenses for the year ended December 31, 2020.  The reclassifications and change in presentation of the statements of operations did not impact previously recorded net loss and stockholders&#x2019; equity.&lt;/span&gt;&lt;/div&gt;</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i67f91720bcc245d8b36157b3d14ad2f9_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjU4Mzg1MjMzMTE0ODQ_ae6cb33f-62c4-4bce-aa62-c9ff65e66419"
      unitRef="usd">6500000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTEwMzA1Ng_0f9890d9-14ff-43ad-85e6-658bc3807a94">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Business Combinations&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company includes the results of operations of its acquisitions in its consolidated results, prospectively from the date of acquisition. The Company allocates the fair value of purchase consideration to the assets acquired, liabilities assumed and any non-controlling interests in the acquired entity generally based on their fair values at the acquisition date. The excess of the fair value of purchase consideration over the fair value of these assets acquired, liabilities assumed and any non-controlling interests in the acquired entity is recorded as goodwill. The primary items that generate goodwill include the value of the synergies between the acquired company and Flotek and the value of the acquired assembled workforce. Acquisition-related expenses are recognized separately from the business acquisition and are recognized as expenses as incurred.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80MC9mcmFnOjIwZDUxZDQ1MThmYzQ5MzJhNjNhNjk0ZGYyOTc3MTEzL3RleHRyZWdpb246MjBkNTFkNDUxOGZjNDkzMmE2M2E2OTRkZjI5NzcxMTNfMjc0ODc3OTA5NjE1NA_21a08785-e3a8-41ac-82ad-039002a4b6dc">&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes to U.S. GAAP are established by the Financial Accounting Standards Board (&#x201c;FASB&#x201d;). We evaluate the applicability and impact of all authoritative guidance issued by the FASB. Guidance not listed below was assessed and determined to be either not applicable, clarifications of items listed below, immaterial or already adopted by the Company.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;New Accounting Standards Issued But Not Adopted as of December 31, 2021&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2019-12, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&#x201d; This standard removes specific exceptions to the general principles in &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Topic 740. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The pronouncement is effective for fiscal years beginning after December 15, 2020, including interim periods within those fiscal years, with early adoption permitted for public companies for periods in which financial statements have not yet been issued.  The Company evaluated the impact of this standard and determined that there is no impact on the consolidated financial statements and related disclosures. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2016-13, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Measurement of Credit Losses on Financial Instruments&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&#x201d; This standard replaces the incurred loss impairment methodology in current U.S. GAAP with a methodology that reflects estimates of expected credit losses over their contractual life that are recorded at inception based on historical information, current conditions, and reasonable and supportable forecasts. The pronouncement is effective for smaller reporting companies for fiscal years beginning after December 15, 2022. The Company is currently evaluating the impact of this standard, including subsequent amendments, on the consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2020-06, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Accounting for Convertible Instruments and Contracts in an Entity&#x2019;s Own Equity.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x201d; This standard changes the accounting for convertible instruments by reducing the number of accounting models, amends the requirements for a conversion option to be classified in equity and amends diluted earnings per share calculations for certain convertible debt instruments.   The pronouncement is effective for smaller reporting companies for fiscal years beginning after December 15, 2023, with early adoption allowed for fiscal years beginning after December 15, 2020.  The Company has adopted this standard on January 1, 2022, and is evaluating the impact of this standard, on the consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The FASB issued ASU No. 2021-10, &#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Government Assistance (Topic 832); Disclosures by Business Entities about Government Assistance.&#x201d; &lt;/span&gt;This standard provides guidance on disclosures for transactions with a government that are accounted for by applying a grant or contribution accounting model by analogy.  The pronouncement is effective for fiscals years beginning after December 15, 2021.  The Company is currently evaluating the impact of this standard on the consolidated financial statements and related disclosures.</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTk1MA_a3933450-46cb-44e2-a3d1-7160cf5ad585">Business Acquisition&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 18, 2020, the Company acquired 100% ownership of JP3, a privately-held data and analytics technology company, in a cash-and-stock transaction. The transaction was valued at approximately $36.6 million as of the transaction closing date, comprised of $25.0 million in cash, subject to certain adjustments and contingent consideration as described below, and 11.5 million shares in Flotek common stock with an estimated fair value of $8.5&#160;million, net of a discount for marketability due to a lock-up period. The payment of $25.0 million was subject to certain purchase price adjustments, and the total non-equity consideration at closing on May 18, 2020 was comprised of $25.0 million plus net working capital in excess of the target net working capital of $1.9&#160;million. Additionally, the Company was subject to contingent consideration with an estimated fair value of $1.2&#160;million at acquisition date for two potential earn-out provisions totaling up to $5.0 million based on certain stock performance targets. The first and second earn-out provisions occur if the ten-day volume-weighted average share price equals or exceeds $2 per share and $3 per share, respectively, before May 18, 2025. See Note 13, &#x201c;Fair Value Measurements,&#x201d; for additional information on the current estimated fair value of the contingent consideration.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the fair value of JP3&#x2019;s assets acquired as of the closing date of May 18, 2020 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.361%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tradenames and trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Technology and know-how&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer lists&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net working capital, net of cash and inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,063)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fixed assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term debt assumed and other assets (liabilities)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(893)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 8, &#x201c;Goodwill,&#x201d; for additional information on goodwill remeasurement and impairment. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recorded transaction costs of $0.5&#160;million for professional services including legal, accounting, and other professional or consulting fees in connection with the JP3 acquisition to the Company&#x2019;s operating expenses (excluding depreciation and amortization) in the consolidated statements of operations during the second quarter of 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pro forma information for JP3 is not provided as the impact is not considered material.&lt;/span&gt;&lt;/div&gt;During the third quarter of 2020, the Company made certain measurement period adjustments to inventory, resulting in an increase of goodwill of $2.3&#160;million.</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfOTE_4abbc731-348d-490e-b43d-64f2714ba268"
      unitRef="number">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfNzkw_7afae67b-5635-4e35-a669-9895323b7640"
      unitRef="usd">36600000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfODQy_dc6b3af3-a205-46dd-8e87-809be02dbecf"
      unitRef="usd">25000000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfOTM4_92fa8329-6df7-420c-a6b7-d3e51345f817"
      unitRef="shares">11500000</us-gaap:BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued>
    <us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTAwMw_ed694e0b-997e-4d28-a01b-def23bcde1af"
      unitRef="usd">8500000</us-gaap:BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTA4Mw_dc6b3af3-a205-46dd-8e87-809be02dbecf"
      unitRef="usd">25000000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTIwNA_dc6b3af3-a205-46dd-8e87-809be02dbecf"
      unitRef="usd">25000000</us-gaap:PaymentsToAcquireBusinessesGross>
    <ftk:BusinessCombinationExcessWorkingCapitalAssumed
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTI3OQ_f62ad287-3749-4069-9d68-6b99135fedf5"
      unitRef="usd">1900000</ftk:BusinessCombinationExcessWorkingCapitalAssumed>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTM4MQ_cc668f26-42ba-4022-8324-ac32fb5eba65"
      unitRef="usd">1200000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <ftk:NumberOfPotentialEarnOutProvisions
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTQwOA_d7d1d791-84d8-4721-bda9-f20d4023b860"
      unitRef="provision">2</ftk:NumberOfPotentialEarnOutProvisions>
    <ftk:BusinessCombinationEarnOutPayments
      contextRef="i501b5cc646e94c48b3330d84c6d997e5_D20200518-20200518"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTQ1Ng_b8e500ce-ca50-4168-a426-a55ce77fb36a"
      unitRef="usd">5000000</ftk:BusinessCombinationEarnOutPayments>
    <ftk:EarnOutProvisionThresholdOne
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTYxOQ_f327731b-4886-4263-8919-6afc9d25fb7b"
      unitRef="usdPerShare">2</ftk:EarnOutProvisionThresholdOne>
    <ftk:EarnOutProvisionThresholdTwo
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTYzNg_899656bd-b657-496a-9e08-ec925c6f96bf"
      unitRef="usdPerShare">3</ftk:EarnOutProvisionThresholdTwo>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTk0OQ_e2a58cdf-8e04-4d76-8772-78e1536cd063">The following table summarizes the fair value of JP3&#x2019;s assets acquired as of the closing date of May 18, 2020 (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:75.361%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.993%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tradenames and trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Technology and know-how&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer lists&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,800&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;604&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net working capital, net of cash and inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,063)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fixed assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;426&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term debt assumed and other assets (liabilities)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(893)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net assets acquired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36,596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="ib4db44d2fc904117a7e148bebe5a2db4_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfMC0yLTEtMS0zMjQ4OA_2373df2b-0936-4b52-9ab8-60b46238da65"
      unitRef="usd">1100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i10c94df7bbb641fbbb149c8ae67dad88_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfMS0yLTEtMS0zMjQ4OA_5eb30de0-2e17-45c5-bcc8-9559523407b9"
      unitRef="usd">5000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill
      contextRef="i35081b709f4043d49bb747993ee20c74_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfMi0yLTEtMS0zMjQ4OA_e6ff7713-dbe0-4a6d-ad7e-397ab2f41b6a"
      unitRef="usd">6800000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfMy0yLTEtMS0zMjQ4OA_4b52fa99-3135-4f90-859e-51e44adce8ba"
      unitRef="usd">7100000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfNC0yLTEtMS0zMjQ4OA_63bdaa18-6d31-4e7e-9bf6-7e65cf46cc76"
      unitRef="usd">604000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <ftk:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedNetWorkingCapitalNetOfCashAndInventory
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfNS0yLTEtMS0zMjQ4OA_ecf683d9-2813-43f0-90b8-e2cd88f516f6"
      unitRef="usd">-1063000</ftk:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedNetWorkingCapitalNetOfCashAndInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfNi0yLTEtMS0zMjQ4OA_b950e198-0348-4774-8c30-3ba6a7696e23"
      unitRef="usd">426000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <ftk:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedOtherAssetsLiabilities
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfNy0yLTEtMS0zMjQ4OA_745a491d-976d-4fe1-b114-534ebe891f3d"
      unitRef="usd">-893000</ftk:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedOtherAssetsLiabilities>
    <us-gaap:Goodwill
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfOC0yLTEtMS0zMjQ4OA_0be4808f-ba24-4ec0-9ca2-2017645b9561"
      unitRef="usd">17522000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="i40f9948c11d94440aa2d5063a23ee979_I20200518"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RhYmxlOmQ1YzRlZTkyN2JlMDRmNDE5ZDk0MDQxNTVmNjYwNmRkL3RhYmxlcmFuZ2U6ZDVjNGVlOTI3YmUwNGY0MTlkOTQwNDE1NWY2NjA2ZGRfOS0yLTEtMS0zMjQ4OA_ed9a462c-b63a-4be5-80e6-4750abee531a"
      unitRef="usd">36596000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed
      contextRef="ib760ef0c2b29454c816d60922ef09ead_D20200401-20200630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTc1OTIxODYwNDc4NTk_893bbc2c-5d02-4f97-bd6a-a5238bda7775"
      unitRef="usd">500000</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCostExpensed>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ife5669c8d37e4cb3ae26ff6f74c42151_D20200701-20200930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80My9mcmFnOjI1YzU3ZTIwZGJhMjQyNTRiMjQ3NzQ1NjUxMzMwNjlhL3RleHRyZWdpb246MjVjNTdlMjBkYmEyNDI1NGIyNDc3NDU2NTEzMzA2OWFfMTc1OTIxODYwNDgzOTA_da325563-4208-4d1e-9b04-4ddf3cc6ea44"
      unitRef="usd">2300000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RleHRyZWdpb246Njk2ZmQ5ZWE4YjhkNGNjOGEwNTE3YzUwMGE2ZTQwYzZfNDI1MA_66daa3da-deef-4e04-85de-eb3257d84836">Revenue from Contracts with Customers&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenues are recognized when control of the promised goods or services is transferred to the customer, in an amount that reflects the consideration the Company expects to be entitled in exchange for those goods or services. In recognizing revenue for products and services, the Company determines the transaction price of purchase orders or contracts with customers, which may consist of fixed and variable consideration. Determining the transaction price may require significant judgment by management, which includes identifying performance obligations, estimating variable consideration to include in the transaction price, and determining whether promised goods or services can be distinguished in the context of the contract. Variable consideration typically consists of product returns and is estimated based on the amount of consideration the Company expects to receive. Revenue accruals are recorded on an ongoing basis to reflect updated variable consideration information.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The majority of the products from the CT segment are sold at a point in time and service contracts are short-term in nature. The DA segment recognizes revenue for sales of equipment at the time of sale. Revenue related to service and support is recognized over time. The Company bills sales on a monthly basis with payment terms customarily &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;30-60 days for domestic and 90-120 days f&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;or international from invoice receipt. In addition, sales taxes are excluded from revenues.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company differentiates revenue based on whether the source of revenue is attributable to product sales (point-in-time revenue recognition) or service revenue (over-time revenue recognition). &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue disaggregated by revenue source is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.838%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Products&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,478&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) Product revenues for 2021 include sales to a related party as described in Note 20, &#x201c;Related Party Transactions.&#x201d;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Arrangements with Multiple Performance Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The CT and DA segments primarily sell chemicals and equipment recognized at a point in time based on when control transfers to the customer determined by agreed upon delivery terms. Additionally, both segments offer various services associated to products sold which includes field services, installation, maintenance, and other functions. For DA, services are recognized &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;upon completion of commissioning and installation due to the short-term nature of the performance obligation. DA has additional performance obligations related to providing ongoing or reoccurring maintenance. Revenue for these types of arrangements is recognized ratably over time throughout the contract period. Additionally, DA may provide subscription-type arrangements with customers in which monthly reoccurring revenue is recognized ratably over time in accordance with agreed upon terms and conditions. Subscription-type arrangements were not a material revenue stream in the years ended December 31, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Under revenue contracts for both products and services, customers are invoiced once the performance obligations have been satisfied, at which point payment is unconditional. Contract assets associated with incomplete performance obligations are not material.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RleHRyZWdpb246Njk2ZmQ5ZWE4YjhkNGNjOGEwNTE3YzUwMGE2ZTQwYzZfNDI0OA_62f26575-c3cd-43d9-a8fd-a460287d658b">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue disaggregated by revenue source is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.838%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Products&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,265&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,478&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) Product revenues for 2021 include sales to a related party as described in Note 20, &#x201c;Related Party Transactions.&#x201d;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock>
    <us-gaap:Revenues
      contextRef="ibbddc4f8503d44579cca21d2d8d1d30e_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RhYmxlOmI5ZjNmNmJjZDJjNzRlYWU4MmJhNzY4ZWViMGFjYWY0L3RhYmxlcmFuZ2U6YjlmM2Y2YmNkMmM3NGVhZTgyYmE3NjhlZWIwYWNhZjRfMy01LTEtMS0zMjQ4OA_b81a39cd-8a2e-4574-a09a-df7da50def9f"
      unitRef="usd">40265000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i1c80c74ba1444681b79e092850b8450a_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RhYmxlOmI5ZjNmNmJjZDJjNzRlYWU4MmJhNzY4ZWViMGFjYWY0L3RhYmxlcmFuZ2U6YjlmM2Y2YmNkMmM3NGVhZTgyYmE3NjhlZWIwYWNhZjRfMy03LTEtMS0zMjQ4OA_35e9e3e8-4883-4b55-90f3-9dfd617c0fbf"
      unitRef="usd">50478000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i267138aaa2924a62bb736f44f81b3312_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RhYmxlOmI5ZjNmNmJjZDJjNzRlYWU4MmJhNzY4ZWViMGFjYWY0L3RhYmxlcmFuZ2U6YjlmM2Y2YmNkMmM3NGVhZTgyYmE3NjhlZWIwYWNhZjRfNS01LTEtMS0zMjQ4OA_113385fd-5e32-418b-a709-58f83c38a363"
      unitRef="usd">3003000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if63f2da8ace0413196b04463906192e6_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RhYmxlOmI5ZjNmNmJjZDJjNzRlYWU4MmJhNzY4ZWViMGFjYWY0L3RhYmxlcmFuZ2U6YjlmM2Y2YmNkMmM3NGVhZTgyYmE3NjhlZWIwYWNhZjRfNS03LTEtMS0zMjQ4OA_c165c87a-59af-49b5-9024-e20632610217"
      unitRef="usd">2663000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RhYmxlOmI5ZjNmNmJjZDJjNzRlYWU4MmJhNzY4ZWViMGFjYWY0L3RhYmxlcmFuZ2U6YjlmM2Y2YmNkMmM3NGVhZTgyYmE3NjhlZWIwYWNhZjRfNi01LTEtMS0zMjQ4OA_ce85c532-37fb-4b96-a2cb-8b0e85307776"
      unitRef="usd">43268000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF80OS9mcmFnOjY5NmZkOWVhOGI4ZDRjYzhhMDUxN2M1MDBhNmU0MGM2L3RhYmxlOmI5ZjNmNmJjZDJjNzRlYWU4MmJhNzY4ZWViMGFjYWY0L3RhYmxlcmFuZ2U6YjlmM2Y2YmNkMmM3NGVhZTgyYmE3NjhlZWIwYWNhZjRfNi03LTEtMS0zMjQ4OA_5e683273-d1f6-4636-a89b-421705a3057e"
      unitRef="usd">53141000</us-gaap:Revenues>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfNjMy_7c64af84-a9f4-4af2-83d4-8681805b2eb1">Inventories &lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.052%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,985&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,595&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,895&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less reserve for excess and obsolete inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,141)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,058)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Changes in the reserve for excess and obsolete inventory are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.187%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.762%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.704%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance, beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,058&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,698&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Charged to provisions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deductions for sales and disposals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,540)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,901)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Balance, end of the year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,058&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The provisions recorded in the year ended December 31, 2021 w&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ere $0.6&#160;million &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;for the CT segment an&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;d nil&lt;/span&gt; for the DA segment. The provisions recorded in the year ended December 31, 2020 were $8.4&#160;million for the CT segment and $3.9&#160;million for the DA segment.</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfNjQw_2b2c9b0f-1324-4340-8a41-dd500016279b">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.572%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.052%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,610&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,985&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,705&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,595&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,895&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less reserve for excess and obsolete inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10,141)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,058)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterials
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfMS0xLTEtMS0zMjQ4OA_f9e3bd64-c309-469e-bc3c-7d5f5e706c23"
      unitRef="usd">5610000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfMS0zLTEtMS0zMjQ4OA_2612f909-22a3-430c-b510-d5cab8c79859"
      unitRef="usd">7190000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryFinishedGoods
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfMy0xLTEtMS0zMjQ4OA_70e9678d-dd18-4433-9801-57a498c59232"
      unitRef="usd">13985000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfMy0zLTEtMS0zMjQ4OA_4c4f647d-06c4-45dc-8c82-5b6bad0be98e"
      unitRef="usd">15705000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryGross
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfNC0xLTEtMS0zMjQ4OA_b8bc7ddd-579c-4ae4-82cf-92b33333432f"
      unitRef="usd">19595000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfNC0zLTEtMS0zMjQ4OA_5d2c21fb-c657-4140-967b-d73521ec1737"
      unitRef="usd">22895000</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfNS0xLTEtMS0zMjQ4OA_0c74ebd2-d80b-405c-8bd5-1c43b856fc4f"
      unitRef="usd">10141000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfNS0zLTEtMS0zMjQ4OA_ea3f80cc-3283-4b8a-b6f6-e365030d9e4e"
      unitRef="usd">11058000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfNi0xLTEtMS0zMjQ4OA_7ff19a09-c774-407a-aa78-4771aa455e82"
      unitRef="usd">9454000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOjdkZWVlNWIzZjMzOTQ4ZGU5ODI0NjhiMjAyZDY3MTdhL3RhYmxlcmFuZ2U6N2RlZWU1YjNmMzM5NDhkZTk4MjQ2OGIyMDJkNjcxN2FfNi0zLTEtMS0zMjQ4OA_237b424c-ce00-4b7f-9f6f-f47e314ca89d"
      unitRef="usd">11837000</us-gaap:InventoryNet>
    <ftk:ScheduleOfInventoryValuationReserveChangesTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfMjc0ODc3OTA3MTkxNQ_5c53ab48-9a10-4182-935c-af7ea2640cab">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Changes in the reserve for excess and obsolete inventory are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.187%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.762%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.704%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.678%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.356%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance, beginning of year&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,058&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,698&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Charged to provisions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;623&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deductions for sales and disposals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,540)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,901)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Balance, end of the year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,058&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ftk:ScheduleOfInventoryValuationReserveChangesTableTextBlock>
    <us-gaap:InventoryValuationReserves
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfMS0xLTEtMS0zNDM5Nw_42171c5d-22cb-4d50-9758-65cdc833aa38"
      unitRef="usd">11058000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfMS0zLTEtMS0zNDM5Nw_4912a9c6-0f17-48f9-a89c-db6bb7390ac3"
      unitRef="usd">5698000</us-gaap:InventoryValuationReserves>
    <ftk:InventoryValuationReservesChargedToProvisions
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfMi0xLTEtMS0zNDM5Nw_61c5110d-200d-4727-aabc-11f4573eb834"
      unitRef="usd">623000</ftk:InventoryValuationReservesChargedToProvisions>
    <ftk:InventoryValuationReservesChargedToProvisions
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfMi0zLTEtMS0zNDM5Nw_f594e74b-c204-43d2-a352-b4a09f89b811"
      unitRef="usd">12261000</ftk:InventoryValuationReservesChargedToProvisions>
    <ftk:InventoryValuationReservesDeductionsForSalesAndDisposals
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfMy0xLTEtMS0zNDM5Nw_7e529804-9258-4ff5-b556-f13f04b35014"
      unitRef="usd">1540000</ftk:InventoryValuationReservesDeductionsForSalesAndDisposals>
    <ftk:InventoryValuationReservesDeductionsForSalesAndDisposals
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfMy0zLTEtMS0zNDM5Nw_6b202298-92d8-4909-bf49-729d416aeeb5"
      unitRef="usd">6901000</ftk:InventoryValuationReservesDeductionsForSalesAndDisposals>
    <us-gaap:InventoryValuationReserves
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfNC0xLTEtMS0zNDM5Nw_c2c38668-a9eb-40c9-9f18-2664980c95c6"
      unitRef="usd">10141000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RhYmxlOmFjZDk2Mjg1YjYwZDQwNzhiY2Q3MTQ3NmQ5Y2ExMGUyL3RhYmxlcmFuZ2U6YWNkOTYyODViNjBkNDA3OGJjZDcxNDc2ZDljYTEwZTJfNC0zLTEtMS0zNDM5Nw_81ca8d5a-0cfe-4ef2-9f9d-f0a35e75bbf6"
      unitRef="usd">11058000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryWriteDown
      contextRef="i23968f63865a4d279e68def95590af6c_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfMjA3_e6f02849-b04b-47a3-87d5-f58c58bc9f90"
      unitRef="usd">600000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="i801190c569824e5fa9becfd47b9b5a84_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfMjMz_23451275-816b-4224-a158-083becb2bc04"
      unitRef="usd">0</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="ib380e44124da484f90b151cf4fee7718_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfMzUx_14dba149-3954-4246-b674-55c369f9d246"
      unitRef="usd">8400000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="if16acfa45af34796906a5dc007e185d5_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81Mi9mcmFnOmYyMTVmNDU5YjUzNzRhMGE4YmNiMDY4MGQ1M2RhYjM0L3RleHRyZWdpb246ZjIxNWY0NTliNTM3NGEwYThiY2IwNjgwZDUzZGFiMzRfMzc3_ce153593-3619-4971-9ea8-8d88eef6aa87"
      unitRef="usd">3900000</us-gaap:InventoryWriteDown>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RleHRyZWdpb246MmFmYWFlYmQyZDU1NDFkZDk2ZmI4YzEwYzU2YjNiMjFfOTMy_8852591a-09f8-4621-b522-62d5f6396e71">Property and Equipment&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are as follows (in thousands):&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.374%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;886&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,415&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Land improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;520&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;867&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Buildings and leasehold improvements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,473&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,364&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Machinery and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,843&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;620&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Transportation equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,190&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer equipment and software&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,176&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,396&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,541&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,100)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,454)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,296&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense totaled $1.0&#160;million and $2.5&#160;million for the years ended December 31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the third quarter of 2021, the Company committed to plans to sell its warehouse facility in Monahans, Texas and its manufacturing facility in Waller, Texas, in their current condition and as a result the associated assets in the amount of $2.8&#160;million are classified as held for sale as of December 31, 2021. Subsequent to December 31, 2021, the Company entered into a contract to sell the Waller manufacturing facility which is expected to close in April 2022. See further discussion in Note 22, Subsequent Events.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2020, the Company recorded an impairment of property and equipment assets totaling $30.2&#160;million. No impairment was recognized during the year ended December 31, 2021.   Refer to Note 10 &#x2014; Impairment of Property and Equipment, Operating Lease Right-of-use Assets and Intangible Assets.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i2c880f064d444fcd9165e9b62e655022_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMS0xLTEtMS0zMjQ4OA_eb05d3f8-7731-4d2f-9e3d-69c9922da47d"
      unitRef="usd">886000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i81f904f11a6943ecbe3022927015d45d_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMS0zLTEtMS0zMjQ4OA_995e31bb-ed3d-4a28-941a-97e49f45d063"
      unitRef="usd">2415000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="if87abc0af9f04c57996399f0f05e577a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMi0xLTEtMS0zMjQ4OA_6063a430-4d87-426a-ab32-8c6d32387986"
      unitRef="usd">520000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i20bc567a76324fa3a7f24ecdacd4f53b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMi0zLTEtMS0zMjQ4OA_8349c855-ec63-4b15-ad51-9caa2d5db5ad"
      unitRef="usd">867000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ie2dd0e90871d41848c56896114784d00_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMy0xLTEtMS0zMjQ4OA_23823597-4d92-4180-b112-28a46a0a5609"
      unitRef="usd">5473000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i4a0fc029ecf2464bbe6fe02e50effec2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMy0zLTEtMS0zMjQ4OA_67be47ea-e80e-4c93-8f57-95201da89bbf"
      unitRef="usd">6364000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i2097198cfca84a0e8f0a90f70669fc36_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfNC0xLTEtMS0zMjQ4OA_bd66cf8b-7dce-444a-8fdc-d239ddb74453"
      unitRef="usd">6843000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="iaa098f634d0c4380a02703692c71c172_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfNC0zLTEtMS0zMjQ4OA_720cf8c3-2301-4b8a-bc3c-06b5f61de065"
      unitRef="usd">7760000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i264cc023e0f345f4bad8aad6d90b0016_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfNi0xLTEtMS0zMjQ4OA_8336d78d-83b4-4905-80ff-ef667fb0dcd5"
      unitRef="usd">620000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ic93cf752d93c47a78fb3cb750ccdabc0_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfNi0zLTEtMS0zMjQ4OA_5cfe287a-1e48-4949-96ed-4f724e92e102"
      unitRef="usd">649000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i6ad7e936194d4f439d09f6f48610d8d6_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfNy0xLTEtMS0zMjQ4OA_6c2e9a6b-3cb2-4b47-b1ce-23ad610ae81e"
      unitRef="usd">878000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i79ba6e5649144b99a9daf502d09ab020_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfNy0zLTEtMS0zMjQ4OA_1dadce21-9ed6-4257-b01b-45a0e9258a59"
      unitRef="usd">1190000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="ibc7ada1b0ad44cd9bb27a7de5bfb07be_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfOC0xLTEtMS0zMjQ4OA_b950ed2f-f01b-422b-a446-08a5fec9d6a1"
      unitRef="usd">1176000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i3fba7451afef474f938e9861c0cc878b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfOC0zLTEtMS0zMjQ4OA_9bd75a21-96cf-41ac-97b0-967ec92aa26d"
      unitRef="usd">1296000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfOS0xLTEtMS0zMjQ4OA_c96453eb-8320-478e-af03-e3d40935d608"
      unitRef="usd">16396000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfOS0zLTEtMS0zMjQ4OA_5bd2c4e8-2bdb-4512-a160-5762fce4c4ab"
      unitRef="usd">20541000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMTAtMS0xLTEtMzI0ODg_72d7bfe2-58f2-4023-8fe2-4f5f531d1541"
      unitRef="usd">11100000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMTAtMy0xLTEtMzI0ODg_6c7c43f6-c3ba-44f3-8c58-8d507078b738"
      unitRef="usd">11454000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMTEtMS0xLTEtMzI0ODg_e64fa7fb-419c-4dc4-a56b-b74e99776aae"
      unitRef="usd">5296000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RhYmxlOmJiZWRiY2QxZjYzYzRhMTRhODBkZTU5YWQ5ZDBkYzRjL3RhYmxlcmFuZ2U6YmJlZGJjZDFmNjNjNGExNGE4MGRlNTlhZDlkMGRjNGNfMTEtMy0xLTEtMzI0ODg_11390b08-82d6-4176-83d8-08340698368f"
      unitRef="usd">9087000</us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization>
    <us-gaap:Depreciation
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RleHRyZWdpb246MmFmYWFlYmQyZDU1NDFkZDk2ZmI4YzEwYzU2YjNiMjFfMTkx_a381e92d-0b91-4272-87b7-555f8b3e2a8b"
      unitRef="usd">1000000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RleHRyZWdpb246MmFmYWFlYmQyZDU1NDFkZDk2ZmI4YzEwYzU2YjNiMjFfMTk4_af8fa69d-7534-4e74-9bb1-b137e34578f1"
      unitRef="usd">2500000</us-gaap:Depreciation>
    <us-gaap:AssetsHeldForSaleNotPartOfDisposalGroup
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RleHRyZWdpb246MmFmYWFlYmQyZDU1NDFkZDk2ZmI4YzEwYzU2YjNiMjFfMjU4Mzg1MjMyNTc2Mjk_5b95a5d5-8dab-44ea-8fc5-53fe22a097ef"
      unitRef="usd">2800000</us-gaap:AssetsHeldForSaleNotPartOfDisposalGroup>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RleHRyZWdpb246MmFmYWFlYmQyZDU1NDFkZDk2ZmI4YzEwYzU2YjNiMjFfMjc0ODc3OTA3MjYzOQ_084291c2-e37f-4e5e-bb29-12c35185c0d5"
      unitRef="usd">30200000</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81NS9mcmFnOjJhZmFhZWJkMmQ1NTQxZGQ5NmZiOGMxMGM1NmIzYjIxL3RleHRyZWdpb246MmFmYWFlYmQyZDU1NDFkZDk2ZmI4YzEwYzU2YjNiMjFfMjc0ODc3OTA3MjY1Mw_f8e2ae86-27dd-47f9-b714-45a394627b5f"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjIyOQ_7103792c-76a0-4c75-823d-d170e9f9e8d9">Leases&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2021, the company entered into a five-year triple net operating lease agreement to lease its warehouse facility in Monahans, Texas, for $20,000 per month, and the tenant occupied the warehouse facility in September 2021. The Company will recognize rental income, including rent, taxes and insurance over the lease period.  Rental income recognized during the year ended December 31, 2021 was $76,000 and was included in other income in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In July 2021, the Company entered into a long-term rental agreement to lease its manufacturing facility in Waller, Texas, for $40,000 per month for sixty-four months. Rental income recognized during the year ended December 31, 2021 was $121,000 and was included in other income in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the first quarter of 2020, &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;the Company ceased use of the corporate headquarters leased offices and moved corporate employees to the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Global Research and Innovation Center (&#x201c;GRIC&#x201d;)&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; during the second quarter of 2020. In addition, the operating lease liability and corresponding operating lease right-of-use (&#x201c;ROU&#x201d;) assets for the corporate headquarters and GRIC were remeasured to remove the anticipated term extensions as the Company determined it was no longer reasonably certain to utilize the extension at the GRIC. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The remeasurement resulted in reductions to lease liabilities and ROU assets totaling of $6.2 million during the year ended December 31, 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition, during the year ended December 31 2020, the Company recorded an impairment of the ROU assets totaling $7.4 million. No impairment was recognized during the year ended December 31, 2021.  Refer to Note 10, &#x201c;Impairment of Property and Equipment, Operating Lease Right-of-use Assets and Intangible Assets&#x201d;. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense and supplemental cash flow information are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:93.567%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.368%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.056%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.025%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest on lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;text-indent:13.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease expense  &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Maturities of lease liabilities as of December 31,2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.743%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.185%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.469%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.471%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,790)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to leases is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.227%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.446%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,779&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(33)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Lease Term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.1 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.1 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted Average Discount Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeFinanceLeasesTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjIzNw_380e3b69-c742-410f-a1c2-f767f51964dc">Leases&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In August 2021, the company entered into a five-year triple net operating lease agreement to lease its warehouse facility in Monahans, Texas, for $20,000 per month, and the tenant occupied the warehouse facility in September 2021. The Company will recognize rental income, including rent, taxes and insurance over the lease period.  Rental income recognized during the year ended December 31, 2021 was $76,000 and was included in other income in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In July 2021, the Company entered into a long-term rental agreement to lease its manufacturing facility in Waller, Texas, for $40,000 per month for sixty-four months. Rental income recognized during the year ended December 31, 2021 was $121,000 and was included in other income in the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the first quarter of 2020, &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;the Company ceased use of the corporate headquarters leased offices and moved corporate employees to the &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Global Research and Innovation Center (&#x201c;GRIC&#x201d;)&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; during the second quarter of 2020. In addition, the operating lease liability and corresponding operating lease right-of-use (&#x201c;ROU&#x201d;) assets for the corporate headquarters and GRIC were remeasured to remove the anticipated term extensions as the Company determined it was no longer reasonably certain to utilize the extension at the GRIC. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The remeasurement resulted in reductions to lease liabilities and ROU assets totaling of $6.2 million during the year ended December 31, 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition, during the year ended December 31 2020, the Company recorded an impairment of the ROU assets totaling $7.4 million. No impairment was recognized during the year ended December 31, 2021.  Refer to Note 10, &#x201c;Impairment of Property and Equipment, Operating Lease Right-of-use Assets and Intangible Assets&#x201d;. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense and supplemental cash flow information are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:93.567%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.368%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.056%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.025%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest on lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;text-indent:13.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease expense  &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Maturities of lease liabilities as of December 31,2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.743%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.185%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.469%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.471%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,790)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to leases is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.227%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.446%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,779&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(33)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Lease Term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.1 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.1 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted Average Discount Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeFinanceLeasesTextBlock>
    <us-gaap:LessorOperatingLeaseTermOfContract
      contextRef="ic9e8f7a2dfc14cbdbbdb47989a771ff1_I20210831"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjI0Mg_edfb967c-c541-4cd9-81b5-09080dd08a26">P5Y</us-gaap:LessorOperatingLeaseTermOfContract>
    <ftk:LessorOperatingLeaseMonthlyRent
      contextRef="ic9e8f7a2dfc14cbdbbdb47989a771ff1_I20210831"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjc0ODc3OTA3MzYyNg_6e9973bb-8f1f-4f59-b1f6-d9ed9d83d336"
      unitRef="usd">20000</ftk:LessorOperatingLeaseMonthlyRent>
    <us-gaap:SubleaseIncome
      contextRef="i074e0385bf2b4cd79a0ee18bbdf3f7f8_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjc0ODc3OTA3MzYxNw_37417fd1-147f-44bb-84cc-3544fae2bc05"
      unitRef="usd">76000</us-gaap:SubleaseIncome>
    <ftk:LessorOperatingLeaseMonthlyRent
      contextRef="i2ad7c00309b64158bca2a0f35a34ddfc_I20210731"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjc0ODc3OTA3MzYzNQ_a9479ecf-facd-4f3d-825e-d2489a26f15e"
      unitRef="usd">40000</ftk:LessorOperatingLeaseMonthlyRent>
    <us-gaap:LessorOperatingLeaseTermOfContract
      contextRef="i2ad7c00309b64158bca2a0f35a34ddfc_I20210731"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjc0ODc3OTA3MzY0Mw_7c980deb-6302-4644-9a14-7fe0d6fb4e72">P64M</us-gaap:LessorOperatingLeaseTermOfContract>
    <us-gaap:SubleaseIncome
      contextRef="i5b0a289e44c64fd3a5e3edecf5fa9c61_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjE5OTAyMzI1OTQ3Mg_0e7719ff-da18-4175-97e4-400399bb5c46"
      unitRef="usd">121000</us-gaap:SubleaseIncome>
    <us-gaap:OperatingLeaseLiability
      contextRef="i296ff37407a3407e93455c46bb5d5927_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMTU1Mw_2edcbe31-c4dd-4437-b8ff-a3265a95278d"
      unitRef="usd">-6200000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i296ff37407a3407e93455c46bb5d5927_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMTU1Mw_8230e1f4-be6a-4aa1-ab3f-2978027ca63f"
      unitRef="usd">-6200000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMTg4MA_39704be0-9808-4705-999a-d33b23d0c881"
      unitRef="usd">7400000</us-gaap:OperatingLeaseImpairmentLoss>
    <us-gaap:OperatingLeaseImpairmentLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMTg4NA_61488768-350b-421f-85b3-578afa5bbd88"
      unitRef="usd">0</us-gaap:OperatingLeaseImpairmentLoss>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjI0Mw_17f5d1b4-8c73-46d5-9a71-88bb7daf3588">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of lease expense and supplemental cash flow information are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:93.567%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.368%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.056%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:2.025%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;797&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease expense:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest on lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;text-indent:13.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease expense  &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;267&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,091&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,607&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,884&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMi01LTEtMS0zMjQ4OA_035ab7cf-3341-46e1-a55a-8ddf0b129cac"
      unitRef="usd">797000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMi03LTEtMS0zMjQ4OA_6811ebc8-fdb1-493c-9760-4034b26d2575"
      unitRef="usd">1370000</us-gaap:OperatingLeaseCost>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNC01LTEtMS0zMjQ4OA_f05e8f2b-7fbb-4762-bde6-f97b3ba5c87b"
      unitRef="usd">15000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNC03LTEtMS0zMjQ4OA_75b0dcd9-70db-4111-baf5-9fa74e9f1b39"
      unitRef="usd">17000</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNS01LTEtMS0zMjQ4OA_c86f4eb3-da56-4729-95f9-8324625d5d0d"
      unitRef="usd">12000</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNS03LTEtMS0zMjQ4OA_fa03c8e8-44c8-426b-b939-59c3d4746316"
      unitRef="usd">18000</us-gaap:FinanceLeaseInterestExpense>
    <ftk:FinancingLeaseCost
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNi01LTEtMS0zMjQ4OA_d06f9084-5994-4e64-9fa1-ec3860addee0"
      unitRef="usd">27000</ftk:FinancingLeaseCost>
    <ftk:FinancingLeaseCost
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNi03LTEtMS0zMjQ4OA_5b8178c5-80bc-4f7d-b503-8b65a7cd9927"
      unitRef="usd">35000</ftk:FinancingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNy01LTEtMS0zMjQ4OA_37f4ebf4-b102-47bd-aaa0-466d7732c1d8"
      unitRef="usd">267000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfNy03LTEtMS0zMjQ4OA_d1ab7481-0bea-42d3-a149-56b08dc3d608"
      unitRef="usd">202000</us-gaap:ShortTermLeaseCost>
    <us-gaap:LeaseCost
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTEtNS0xLTEtMzI0ODg_2361cd75-727c-4830-8f0f-57637df63919"
      unitRef="usd">1091000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTEtNy0xLTEtMzI0ODg_1784c7b8-5241-4d3a-b419-7878ab435de2"
      unitRef="usd">1607000</us-gaap:LeaseCost>
    <us-gaap:OperatingLeasePayments
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTQtNS0xLTEtMzI0ODg_efe59009-e065-43ac-b2fe-32d5e9693a55"
      unitRef="usd">1107000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTQtNy0xLTEtMzI0ODg_5ca38191-c789-4659-944f-886345c35a8b"
      unitRef="usd">2884000</us-gaap:OperatingLeasePayments>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTUtNS0xLTEtMzI0ODg_662439d0-c180-40ff-8e5e-3794826d443a"
      unitRef="usd">62000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <us-gaap:FinanceLeaseInterestPaymentOnLiability
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTUtNy0xLTEtMzI0ODg_ad2d72d7-fde4-4f47-9021-c1a9b6762008"
      unitRef="usd">18000</us-gaap:FinanceLeaseInterestPaymentOnLiability>
    <ftk:FinanceLeasePrincipalPaymentsNetOfPrepayments
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTYtNS0xLTEtMzI0ODg_308dac3d-674d-4fb1-a476-2f4a81ee162f"
      unitRef="usd">8000</ftk:FinanceLeasePrincipalPaymentsNetOfPrepayments>
    <ftk:FinanceLeasePrincipalPaymentsNetOfPrepayments
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjdhN2I3M2U0YmVkZTQwZjU4Y2QyMTdiNzhjZTliZTM1L3RhYmxlcmFuZ2U6N2E3YjczZTRiZWRlNDBmNThjZDIxN2I3OGNlOWJlMzVfMTYtNy0xLTEtMzI0ODg_c902fbf4-672f-4eb2-a169-5494bd82ab1a"
      unitRef="usd">70000</ftk:FinanceLeasePrincipalPaymentsNetOfPrepayments>
    <us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjIzNQ_02a0cdb3-14aa-49d5-84cf-001605f57879">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Maturities of lease liabilities as of December 31,2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.743%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.185%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.469%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.471%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,790)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjI0MA_49042047-cbf4-4a93-acb2-d72a494a5c6d">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Maturities of lease liabilities as of December 31,2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:27.743%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.185%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.469%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.471%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ending December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2022&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,254&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,318&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,375&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,423&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;109&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: Interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,790)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(15)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Present value of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfMS0yLTEtMS0zMjQ4OA_4fb37ee6-6af9-4286-b406-66bc5688e209"
      unitRef="usd">1254000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfMS00LTEtMS0zMjQ4OA_13d466ee-4b61-46f5-9f03-a9a1df0dad7e"
      unitRef="usd">47000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfMi0yLTEtMS0zMjQ4OA_3878382b-ff59-4392-8aad-978810fe6148"
      unitRef="usd">1318000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfMi00LTEtMS0zMjQ4OA_3fc03e6b-61d2-4f00-b122-17292d938043"
      unitRef="usd">39000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfMy0yLTEtMS0zMjQ4OA_2d61cb93-80a1-4613-83e2-2f3e4f1c93cd"
      unitRef="usd">1348000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfMy00LTEtMS0zMjQ4OA_02699449-408a-4300-8f32-df407a2af36d"
      unitRef="usd">23000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNC0yLTEtMS0zMjQ4OA_b40b1498-2268-46b9-8aec-c218fa8551c3"
      unitRef="usd">1375000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNC00LTEtMS0zMjQ4OA_777dc29a-8539-4e6b-bd45-b57172f41029"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNS0yLTEtMS0zMjQ4OA_04145605-6912-48f0-be6b-6704d5e75266"
      unitRef="usd">1423000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNS00LTEtMS0zMjQ4OA_b1c01842-f459-4d68-a9e5-cfbe8a728ee4"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNi0yLTEtMS0zMjQ4OA_f7472f1f-f18b-4a5e-8673-2277df9d0b4e"
      unitRef="usd">5453000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNi00LTEtMS0zMjQ4OA_8e92150b-cdad-4fdb-8574-c77bb2441015"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNy0yLTEtMS0zMjQ4OA_15094f92-de49-47ee-bd62-ddc66cccb46c"
      unitRef="usd">12171000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfNy00LTEtMS0zMjQ4OA_57efdc87-e4c0-40dd-aa27-b73941101334"
      unitRef="usd">109000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfOC0yLTEtMS0zMjQ4OA_e2d93878-bce8-43b3-ad6e-870f3e1a281b"
      unitRef="usd">3790000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfOC00LTEtMS0zMjQ4OA_adc3ce9e-c823-43a0-afab-31c1e51eb382"
      unitRef="usd">15000</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfOS0yLTEtMS0zMjQ4OA_db484a90-f969-4b3f-ba25-b83bb612cd27"
      unitRef="usd">8381000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjJlNTljMzRhZjFmYTQ3ZGM5Zjc1MGM1MWE4ZTVkNjZkL3RhYmxlcmFuZ2U6MmU1OWMzNGFmMWZhNDdkYzlmNzUwYzUxYThlNWQ2NmRfOS00LTEtMS0zMjQ4OA_8d4c991c-9e76-44ec-a962-dcc9577b6896"
      unitRef="usd">94000</us-gaap:FinanceLeaseLiability>
    <ftk:AssetsAndLiabilitiesLesseeTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RleHRyZWdpb246NDk5NzJlNGMyZTg1NDg0YTlkYjUxZGM5Njg1YTg2NmNfMjI1MQ_761d5031-9474-402e-96d9-c670b9b9b389">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to leases is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.227%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.443%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.446%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,041&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,320&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;602&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,779&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,348&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,381&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,984&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(33)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current portion of finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;60&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;156&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted Average Remaining Lease Term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.1 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.9 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.1 years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted Average Discount Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</ftk:AssetsAndLiabilitiesLesseeTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMi0xLTEtMS0zMjQ4OA_d5a1278b-dac9-4337-beed-82295b83bfe5"
      unitRef="usd">2041000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMi0zLTEtMS0zMjQ4OA_b0b7feaf-dd3c-46a2-95cb-d7d7b39bf925"
      unitRef="usd">2320000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfNC0xLTEtMS0zMjQ4OA_b9b69209-88e3-45a6-90ed-40a5ec90db65"
      unitRef="usd">602000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfNC0zLTEtMS0zMjQ4OA_bc796b71-7027-4cae-8b2b-4defe213d349"
      unitRef="usd">636000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfNS0xLTEtMS0zMjQ4OA_3febe071-f5c4-4ef6-b38a-fe29aaf1d713"
      unitRef="usd">7779000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfNS0zLTEtMS0zMjQ4OA_21f1189a-b2b9-4e97-80e1-da959c0c4988"
      unitRef="usd">8348000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfNi0xLTEtMS0zMjQ4OA_45237be4-02e0-427c-a2e6-2d5c3bd20a4f"
      unitRef="usd">8381000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfNi0zLTEtMS0zMjQ4OA_3baa1809-a14b-43c6-a6b2-983ffa7a5c56"
      unitRef="usd">8984000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfOS0xLTEtMS0zMjQ4OA_a4755603-9f17-4e2a-be5d-a69f47c2c4ac"
      unitRef="usd">147000</us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfOS0zLTEtMS0zMjQ4OA_e9b764f5-03f0-417b-8cca-3d12914d5dee"
      unitRef="usd">147000</us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTAtMS0xLTEtMzI0ODg_0e7f2284-576a-4818-9dd2-6125f41dae2d"
      unitRef="usd">33000</us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTAtMy0xLTEtMzI0ODg_f0f423bf-38cf-418c-b9b4-6b7595e72882"
      unitRef="usd">26000</us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTEtMS0xLTEtMzI0ODg_6131dad9-be06-4b6d-9cb8-e3ca7f6f6b4a"
      unitRef="usd">114000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTEtMy0xLTEtMzI0ODg_3e3c04e0-ba0c-4371-85a6-f44aad621a8b"
      unitRef="usd">121000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTMtMS0xLTEtMzI0ODg_e4156a9d-86d8-4fa5-9701-629294065e9e"
      unitRef="usd">41000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTMtMy0xLTEtMzI0ODg_c55b3b87-65bc-4663-a381-390dca34dc7b"
      unitRef="usd">60000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTQtMS0xLTEtMzI0ODg_390733c3-9d77-44d5-bc70-d958b497a6d8"
      unitRef="usd">53000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTQtMy0xLTEtMzI0ODg_a3c1c52c-1ef8-491f-807e-392ef14f27fe"
      unitRef="usd">96000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiability
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTUtMS0xLTEtMzI0ODg_dfeb0f8d-337e-4571-a19a-c3ec018e7c98"
      unitRef="usd">94000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTUtMy0xLTEtMzI0ODg_c8137661-1e5d-4bdc-bb63-91c2ef861e79"
      unitRef="usd">156000</us-gaap:FinanceLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTgtMS0xLTEtMzI0ODg_085e1c85-6d30-4864-ab9c-655b8905acdd">P9Y1M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTgtMy0xLTEtMzI0ODg_2be02a3f-94de-4fc5-a533-716d33c4408c">P9Y10M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTktMS0xLTEtMzI0ODg_1eff710d-eb08-4e94-88ca-771c356b4b96">P2Y10M24D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMTktMy0xLTEtMzI0ODg_88c9d82a-1c68-4e32-b0f9-e1e159190758">P3Y1M6D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMjItMS0xLTEtMzI0ODg_01d062fc-fdc3-47d2-b28d-557c6b0b7dc0"
      unitRef="number">0.089</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMjItMy0xLTEtMzI0ODg_c4617fb5-80f1-4548-a52c-9064fd2e3483"
      unitRef="number">0.089</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMjMtMS0xLTEtMzI0ODg_8c8edc72-ce54-4464-bcf5-3c493c1b057e"
      unitRef="number">0.089</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF81OC9mcmFnOjQ5OTcyZTRjMmU4NTQ4NGE5ZGI1MWRjOTY4NWE4NjZjL3RhYmxlOjRlYTYyNjI3M2FhYjQyODg5N2NlNDZlOTRmMmRkNmI0L3RhYmxlcmFuZ2U6NGVhNjI2MjczYWFiNDI4ODk3Y2U0NmU5NGYyZGQ2YjRfMjMtMy0xLTEtMzI0ODg_244c0e4c-5c5e-4af6-b1ce-74cf5ddc7996"
      unitRef="number">0.090</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:GoodwillDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RleHRyZWdpb246NTczYzY0YzE3NmVhNDJiZGE1YWRlYTE2MGRiMzgwYTNfNDQ5_ca7601fb-6e12-417f-a1bd-f58a548e81c2">Goodwill &lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As discussed in Note 3 Business Acquisition, during the second quarter of 2020, the Company acquired 100% ownership of JP3, as a new operating segment and reporting unit. The Company recorded goodwill of $17.5&#160;million.  &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the third quarter of 2020, the Company made certain measurement period adjustments to inventory obtained in the JP3 acquisition, resulting in an increase of goodwill of $2.3&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 1 of each fiscal year, we perform our annual goodwill impairment test for the DA reporting unit. We also test goodwill for impairment whenever events or circumstances occur which, in our judgment, could more likely than not reduce the fair value of the DA reporting unit below its carrying amount. Potential impairment indicators include, but are not limited to, (i) the results of our most recent annual impairment testing, in particular the magnitude of the excess of fair value over carrying value observed, (ii) downward revisions to internal forecasts, and the magnitude thereof, if any, and (iii) declines in our market capitalization below our book value, and the magnitude and duration of those declines, if any. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In performing the annual quantitative impairment test and consistent with our prior practice, we determined the fair value of the DA reporting unit using an income approach. Under the income approach, the fair value of the reporting unit was determined based on the present value of estimated future cash flows, discounted at an appropriate risk-adjusted rate. We used our internal forecasts, updated for recent events, to estimate future cash flows with cash flows beyond the specific operating plans estimated using a terminal value calculation, which incorporates historical and forecasted trends, including an estimate of long-term future growth rates, based on our most recent views of the long-term outlook for the DA reporting unit. Our internal forecasts include assumptions about future commodity pricing and expected demand for our goods and services. For the DA reporting unit, production growth is anticipated to be moderate in the near term as operators continue to show an abundance of fiscal discipline in development spending. Midstream thru-put volumes remain well below capacity levels. While we are expecting production growth to increase, it is likely to do so at a more conservative pace. These factors have precipitated our impairment decision for Data Analytics goodwill. Due to the inherent uncertainties involved in making estimates and assumptions, actual results may differ from those assumed in our forecasts. We derived our discount rate using a capital asset pricing model and analyzing published rates for industries relevant to the DA reporting unit to estimate the cost of equity financing. We used a discount rate that are commensurate with the risks and uncertainties inherent in the respective business and in our internally developed forecasts.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Based upon the results of our annual quantitative impairment test, we concluded that the carrying value of the DA reporting unit exceeded its estimated fair value as of the testing date, which resulted in goodwill impairment charges of $8.1&#160;million. The goodwill impairment was calculated as the amount that the carrying value of the DA reporting unit, including any goodwill, exceeded its fair value. The carrying value of the DA reporting unit equals its fair value upon completion of the goodwill impairment test. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in the carrying amount of goodwill are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:373.50pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:267.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:3.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:97.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at  December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition goodwill recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Measurement period adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill impairment recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,706)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill impairment recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,092)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:36pt;text-align:justify;text-indent:36pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.187%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.096%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.205%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.101%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated impairment losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(19,798)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,706)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Goodwill balance, net of impairment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillDisclosureTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="ie1186dc35b174c01a51e46f095c43397_I20200630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RleHRyZWdpb246NTczYzY0YzE3NmVhNDJiZGE1YWRlYTE2MGRiMzgwYTNfOTg5NTYwNDY1MDQ5NQ_1aaebe1b-5a94-4115-ac67-f78bc6af6055"
      unitRef="number">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i5914d5a35f214ce686da7a713d83fdb5_D20200401-20200630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RleHRyZWdpb246NTczYzY0YzE3NmVhNDJiZGE1YWRlYTE2MGRiMzgwYTNfOTg5NTYwNDY1MDc2Mw_f52adcb7-71f7-4591-8bda-30999d5696c0"
      unitRef="usd">17500000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="ia6826c242562407683f1859d6a910d99_D20200701-20200930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RleHRyZWdpb246NTczYzY0YzE3NmVhNDJiZGE1YWRlYTE2MGRiMzgwYTNfMjc0ODc3OTA3MjEzMw_2a4de907-cf5a-4e6a-a2ae-48faabeb368f"
      unitRef="usd">2300000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i801190c569824e5fa9becfd47b9b5a84_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RleHRyZWdpb246NTczYzY0YzE3NmVhNDJiZGE1YWRlYTE2MGRiMzgwYTNfMzg0ODI5MDcwNzYyNA_3281978e-53ad-4490-8ea6-2e0f7f8875c5"
      unitRef="usd">8100000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RleHRyZWdpb246NTczYzY0YzE3NmVhNDJiZGE1YWRlYTE2MGRiMzgwYTNfNDUx_aa35b180-886e-4eb5-8d79-0bd1eea70686">&lt;div style="margin-bottom:8pt;margin-top:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Changes in the carrying amount of goodwill are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:373.50pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:267.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:3.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:97.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at  December 31, 2019&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Acquisition goodwill recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,522&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Measurement period adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,276&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill impairment recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,706)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill impairment recognized&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,092)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:5pt;text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;padding-left:36pt;text-align:justify;text-indent:36pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.187%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:51.096%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.205%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.098%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:22.101%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,798&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accumulated impairment losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(19,798)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(11,706)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Goodwill balance, net of impairment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,092&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfMC0yLTEtMS0zMjQ4OA_ce0096ba-f599-42f4-b304-4e73fcfbb9a3"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfMS0yLTEtMS0zMjQ4OA_2bf3223d-7234-411d-8386-3eaf03d10204"
      unitRef="usd">17522000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfMi0yLTEtMS0zMjQ4OA_39c8de29-88cb-47ed-b0a3-8b7bb04d2993"
      unitRef="usd">2276000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfMy0yLTEtMS0zMjQ4OA_a6fea9e9-669c-46fa-a3e2-e95ac2a33456"
      unitRef="usd">11706000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfNC0yLTEtMS0zMjQ4OA_68d62618-87af-42e4-9af3-dbc3e4d7de33"
      unitRef="usd">8092000</us-gaap:Goodwill>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfNS0yLTEtMS00ODg5Mg_e32afd83-3e10-4d96-b5ca-cfe946676636"
      unitRef="usd">8092000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjQ4Y2ExODFhYTRhZTQ5MjRhMTU0MWNiMWU5Y2YwNjE0L3RhYmxlcmFuZ2U6NDhjYTE4MWFhNGFlNDkyNGExNTQxY2IxZTljZjA2MTRfOS0yLTEtMS0zNTIzMg_714c6914-239d-4602-8b1b-8ba3fe7e19de"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:GoodwillGross
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjlhYTlmNGExOTI4OTQ0ZjI5Zjc4ZTM1MTAwZDA3ZWVlL3RhYmxlcmFuZ2U6OWFhOWY0YTE5Mjg5NDRmMjlmNzhlMzUxMDBkMDdlZWVfMS0yLTEtMS00ODQzNg_cb64ebcd-384f-40ad-a5db-5f65e3737fd5"
      unitRef="usd">19798000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillGross
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjlhYTlmNGExOTI4OTQ0ZjI5Zjc4ZTM1MTAwZDA3ZWVlL3RhYmxlcmFuZ2U6OWFhOWY0YTE5Mjg5NDRmMjlmNzhlMzUxMDBkMDdlZWVfMS0zLTEtMS00OTE5Mg_95747973-c761-4648-897b-6414eb3d8e52"
      unitRef="usd">19798000</us-gaap:GoodwillGross>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjlhYTlmNGExOTI4OTQ0ZjI5Zjc4ZTM1MTAwZDA3ZWVlL3RhYmxlcmFuZ2U6OWFhOWY0YTE5Mjg5NDRmMjlmNzhlMzUxMDBkMDdlZWVfMi0yLTEtMS00ODQyOQ_a1e7107f-37f7-4a35-ab55-6e1774ffcfa3"
      unitRef="usd">19798000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:GoodwillImpairedAccumulatedImpairmentLoss
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjlhYTlmNGExOTI4OTQ0ZjI5Zjc4ZTM1MTAwZDA3ZWVlL3RhYmxlcmFuZ2U6OWFhOWY0YTE5Mjg5NDRmMjlmNzhlMzUxMDBkMDdlZWVfMi0zLTEtMS00OTE5Mg_fbccb6d1-5435-41ca-83c8-5a75c9552903"
      unitRef="usd">11706000</us-gaap:GoodwillImpairedAccumulatedImpairmentLoss>
    <us-gaap:Goodwill
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjlhYTlmNGExOTI4OTQ0ZjI5Zjc4ZTM1MTAwZDA3ZWVlL3RhYmxlcmFuZ2U6OWFhOWY0YTE5Mjg5NDRmMjlmNzhlMzUxMDBkMDdlZWVfMy0yLTEtMS00ODQzOA_cb6c323b-1aca-4c56-ba58-f9f6dfb4b87b"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82MS9mcmFnOjU3M2M2NGMxNzZlYTQyYmRhNWFkZWExNjBkYjM4MGEzL3RhYmxlOjlhYTlmNGExOTI4OTQ0ZjI5Zjc4ZTM1MTAwZDA3ZWVlL3RhYmxlcmFuZ2U6OWFhOWY0YTE5Mjg5NDRmMjlmNzhlMzUxMDBkMDdlZWVfMy0zLTEtMS00OTE5Mg_4972442a-b3eb-4406-b92a-5d563fa08151"
      unitRef="usd">8092000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82NC9mcmFnOmU1MGJlYTVkNWRmNDRjNWJhYzcwYjc0MzAyNTJkZmUyL3RleHRyZWdpb246ZTUwYmVhNWQ1ZGY0NGM1YmFjNzBiNzQzMDI1MmRmZTJfMjU0_d1e97684-00ef-4665-8dc8-8599ec2e9ee4">Other Intangible Assets&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2020, the Company recorded impairment charges of $32.4&#160;million for other intangible assets, impairing all finite-lived intangible assets, including those acquired in the acquisition of JP3 discussed in Note 3, Business Acquisition. See &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Note 10, &#x201c;Impairment of Property and Equipment, Operating Lease Right-of-use Assets,  and Intangible Assets.&#x201d; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization of intangible assets acquired totaled $0.9 million for the year ended December 31, 2020. There was no intangible amortization recorded during the year ended December 31, 2021.&lt;/span&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82NC9mcmFnOmU1MGJlYTVkNWRmNDRjNWJhYzcwYjc0MzAyNTJkZmUyL3RleHRyZWdpb246ZTUwYmVhNWQ1ZGY0NGM1YmFjNzBiNzQzMDI1MmRmZTJfOTg5NTYwNDY1MDUwMg_60c6a88b-793f-4b01-a57e-1acb174321b6"
      unitRef="usd">32400000</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82NC9mcmFnOmU1MGJlYTVkNWRmNDRjNWJhYzcwYjc0MzAyNTJkZmUyL3RleHRyZWdpb246ZTUwYmVhNWQ1ZGY0NGM1YmFjNzBiNzQzMDI1MmRmZTJfOTg5NTYwNDY1OTIzMQ_b32f4ea4-3f5b-4407-94e5-099d13aaf4c3"
      unitRef="usd">900000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82NC9mcmFnOmU1MGJlYTVkNWRmNDRjNWJhYzcwYjc0MzAyNTJkZmUyL3RleHRyZWdpb246ZTUwYmVhNWQ1ZGY0NGM1YmFjNzBiNzQzMDI1MmRmZTJfMjU4Mzg1MjMyNjMyOTM_2925ddcd-4b3e-4dce-9a6c-7c334855cee9"
      unitRef="usd">0</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AssetImpairmentChargesTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGV4dHJlZ2lvbjoyZjgyMDA1OTQ3NTk0YjU3YWE3YTg2ZjFjODc4ZjY5MF8yNzQ4Nzc5MDczNDQx_452ee501-ea0c-4295-95fc-f044cbcd0572">Impairment of Property and Equipment, Operating Lease Right-of-use Assets and Intangible Assets&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There were no impairments of property and equipment, operating lease right-of-use assets, and intangible assets during the year ended December 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recorded impairment charges of property and equipment, operating lease right-of-use assets and intangible assets during the year ended December 31, 2020, as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:74.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:78.782%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.018%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,178&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,434&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Intangible Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Patents and technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Intangible assets in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Trademarks and brand names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total other intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the first quarter of 2020, with the onset of the global COVID-19 Pandemic and the significant disruption across the industry, the Company&#x2019;s operations were negatively impacted resulting in actual and projected declines in the Company&#x2019;s revenues and results of operations. These declines were driven by market factors, including an oversupply of oil, insufficient storage and demand destruction resulting from the reaction to the pandemic. Based on these factors, the Company concluded that a triggering event occurred and, accordingly, an interim impairment test was performed as of March 31, 2020, for the CT segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Using the income approach, the fair value of the CT segment asset group was determined based on the present value of future cash flows. The Company utilized internal forecast trends and potential growth rates to estimate future cash flows of the asset group. Based on the results of the quantitative assessment, the Company concluded the carrying value of the asset group exceeded its fair value as of March 31, 2020, and an impairment loss of $57.5&#160;million was recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management performed an interim impairment test as of September 30, 2020 for the DA business segment which was negatively impacted by reduced demand&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; in the oil and gas sector because of reductions in capital spending across our customer base, lower than anticipated growth in the international market gained from the JP3 acquisition.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Using the income approach, the fair value of the DA segment asset group was determined based on the present value of future cash flows. The Company utilized internal forecast trends and potential growth rates to estimate future cash flows of the asset group. Based on the results of the assessment, the Company concluded the carrying value of the asset group exceeded its fair value as of September 30, 2020. The Company recognized an impairment loss of $12.5&#160;million in the DA segment asset group. &lt;/span&gt;&lt;/div&gt;During the year ended December 31, 2020, all finite lived intangible assets were fully impaired.</us-gaap:AssetImpairmentChargesTextBlock>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGV4dHJlZ2lvbjoyZjgyMDA1OTQ3NTk0YjU3YWE3YTg2ZjFjODc4ZjY5MF8yNTgzODUyMzI2NDQxMw_2cd4236b-9128-495d-b849-d179ba63ba4a"
      unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:DetailsOfImpairmentOfLongLivedAssetsHeldAndUsedByAssetTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGV4dHJlZ2lvbjoyZjgyMDA1OTQ3NTk0YjU3YWE3YTg2ZjFjODc4ZjY5MF8yNzQ4Nzc5MDczNDQy_b800ce3c-db9e-44f8-9cdd-0a3fc2d25536">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recorded impairment charges of property and equipment, operating lease right-of-use assets and intangible assets during the year ended December 31, 2020, as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:74.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:78.782%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.018%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,178&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,434&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Intangible Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Patents and technology&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,733&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,796&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Intangible assets in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;596&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Trademarks and brand names&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total other intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total impairment charges&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;69,975&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DetailsOfImpairmentOfLongLivedAssetsHeldAndUsedByAssetTextBlock>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF8yLTEtMS0xLTM1MjU4_b191950c-980d-498c-82d4-c94a807329cd"
      unitRef="usd">30178000</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:OperatingLeaseImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF8zLTEtMS0xLTM1MjYw_5bfe84b9-2039-408b-8f73-80a4dd9199bf"
      unitRef="usd">7434000</us-gaap:OperatingLeaseImpairmentLoss>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="ib479c9f4a39e4c65ac055fd357797191_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF81LTEtMS0xLTM1MjYy_4feb7b6a-e054-43a7-83ff-5333ba101edf"
      unitRef="usd">14733000</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i609f53a39f854f6587153757f603bfc1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF82LTEtMS0xLTM1MjYy_6ecdce8b-4cba-48c1-b9d4-80458ff80e57"
      unitRef="usd">15796000</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="ide45b6f9740b4346810885ee34a11bca_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF83LTEtMS0xLTM1MjYy_7c3314c0-4dd0-4935-b515-f6a03707174f"
      unitRef="usd">596000</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i7363b5fa0290417a8f491a63d5e59dae_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF84LTEtMS0xLTM1MjYy_3028b01c-3ef1-43ca-9472-c4d42358a30d"
      unitRef="usd">1238000</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF85LTEtMS0xLTM1MjYy_01bbedd8-3229-4766-808b-f15e8c1e2efe"
      unitRef="usd">32363000</us-gaap:ImpairmentOfIntangibleAssetsExcludingGoodwill>
    <us-gaap:AssetImpairmentCharges
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGFibGU6YjA2NDc3NWQyNDUyNDdjNmEwZGFkNTdiN2NhODc3NjAvdGFibGVyYW5nZTpiMDY0Nzc1ZDI0NTI0N2M2YTBkYWQ1N2I3Y2E4Nzc2MF8xMS0xLTEtMS0zNTI2Mg_a44b5183-4f30-47a4-b92d-9c6f5a80b48e"
      unitRef="usd">69975000</us-gaap:AssetImpairmentCharges>
    <us-gaap:UnusualOrInfrequentItemLossGross
      contextRef="i598790d3a1e94f809d21153ef4e89f86_D20200101-20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGV4dHJlZ2lvbjoyZjgyMDA1OTQ3NTk0YjU3YWE3YTg2ZjFjODc4ZjY5MF85ODk1NjA0NjUxMjM5_00cafc13-ae83-4f9d-9fbe-0db582dae6c2"
      unitRef="usd">57500000</us-gaap:UnusualOrInfrequentItemLossGross>
    <us-gaap:ImpairmentOfIntangibleAssetsFinitelived
      contextRef="i847a39cc884d4ac3a6ad666699fe7c12_D20200701-20200930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzczL2ZyYWc6MmY4MjAwNTk0NzU5NGI1N2FhN2E4NmYxYzg3OGY2OTAvdGV4dHJlZ2lvbjoyZjgyMDA1OTQ3NTk0YjU3YWE3YTg2ZjFjODc4ZjY5MF85ODk1NjA0NjUzNTQy_fb363a23-1ad5-4d83-87a5-1548e6c26d5f"
      unitRef="usd">12500000</us-gaap:ImpairmentOfIntangibleAssetsFinitelived>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGV4dHJlZ2lvbjphY2M4MzNjNTJmOGU0MTBmYTRlZDY5NDgxMWFiYWFhZF8yNzQ4Nzc5MDY5NTM1_de3652b6-53a2-4490-88eb-7986c354d3ee">Accrued Liabilities&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Current accrued liabilities are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.374%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Severance costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss on purchase commitments (Note 15)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payroll and benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Legal costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,013&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent liability for earn-out provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue, current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Taxes other than income taxes &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Due to third parties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;434&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total current accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,996&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGV4dHJlZ2lvbjphY2M4MzNjNTJmOGU0MTBmYTRlZDY5NDgxMWFiYWFhZF8yNzQ4Nzc5MDY5NTM2_ae09252d-949a-47f5-ae9a-ee82fb8dbd02">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Current accrued liabilities are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.222%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.532%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.374%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Severance costs&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,581&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,558&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss on purchase commitments (Note 15)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,402&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payroll and benefits&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,054&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,789&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Legal costs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,013&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;333&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent liability for earn-out provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred revenue, current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;146&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Taxes other than income taxes &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;544&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Due to third parties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;434&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,185&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;653&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total current accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,996&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,275&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <ftk:AccruedLiabilitiesSeveranceCostsCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8yLTEtMS0xLTQ1ODUx_b592c3e8-727b-4eaf-8e4b-515f5216cfa1"
      unitRef="usd">2581000</ftk:AccruedLiabilitiesSeveranceCostsCurrent>
    <ftk:AccruedLiabilitiesSeveranceCostsCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8yLTMtMS0xLTQ1ODUy_331451bd-9b4f-4da4-81e4-e80bf9bdd876"
      unitRef="usd">3558000</ftk:AccruedLiabilitiesSeveranceCostsCurrent>
    <ftk:AccruedLiabilitiesLossOnPurchaseCommitmentsCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8yLTEtMS0xLTM1Mjc2_80602168-c458-45bd-bfe8-24aef85b8b61"
      unitRef="usd">1750000</ftk:AccruedLiabilitiesLossOnPurchaseCommitmentsCurrent>
    <ftk:AccruedLiabilitiesLossOnPurchaseCommitmentsCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8yLTMtMS0xLTM1Mjc4_55a69223-d480-4a42-8c48-841eb538df89"
      unitRef="usd">9402000</ftk:AccruedLiabilitiesLossOnPurchaseCommitmentsCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV80LTEtMS0xLTM1Mjc2_0893a13f-ce0f-4551-a04a-3b24fac653e7"
      unitRef="usd">1054000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV80LTMtMS0xLTM1Mjc4_23912db5-a6a3-47bf-9205-ea99f78d06e6"
      unitRef="usd">1789000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV81LTEtMS0xLTM1Mjc2_f90c8fe1-4cad-40e5-bbd8-af8037c83517"
      unitRef="usd">1013000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV81LTMtMS0xLTM1Mjc4_7f40610b-a097-4bf6-a670-3051fa490f80"
      unitRef="usd">333000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:LossContingencyAccrualCarryingValueCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV82LTEtMS0xLTQ1ODc2_cb2ce6d9-13cf-4d02-a9bf-af7e96191891"
      unitRef="usd">608000</us-gaap:LossContingencyAccrualCarryingValueCurrent>
    <us-gaap:LossContingencyAccrualCarryingValueCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV82LTMtMS0xLTQ1ODc4_d27c698e-4eac-4b1b-a71d-dedc53df2e5c"
      unitRef="usd">1416000</us-gaap:LossContingencyAccrualCarryingValueCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV82LTEtMS0xLTM1Mjc2_31d82fa2-c0de-46f5-bf28-0b5abe248db0"
      unitRef="usd">528000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV82LTMtMS0xLTM1Mjc4_db8c1bfd-beb7-4619-9912-2cecd33bd6df"
      unitRef="usd">146000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV84LTEtMS0xLTQ1ODgy_a78a70b8-fcc5-408e-af57-4ef447489cda"
      unitRef="usd">241000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV84LTMtMS0xLTQ1ODg0_ac2d46e4-a77f-4b1d-9ee1-e2a620a12e0b"
      unitRef="usd">544000</us-gaap:AccrualForTaxesOtherThanIncomeTaxesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV83LTEtMS0xLTM1Mjc2_ef7468df-83f6-415a-86c2-c328057afeea"
      unitRef="usd">36000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV83LTMtMS0xLTM1Mjc4_61b88b5c-552e-46d0-a9d5-572efb6ef09b"
      unitRef="usd">434000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8xMS0xLTEtMS0zNTI3Ng_5ef10383-d58c-4122-b92f-291008c17047"
      unitRef="usd">1185000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8xMS0zLTEtMS0zNTI3OA_8c056203-1936-48f9-a23f-d79c264f6385"
      unitRef="usd">653000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8xNC0xLTEtMS0zNTI3Ng_fb16ebe7-3922-484d-81be-543b7e466935"
      unitRef="usd">8996000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzgwL2ZyYWc6YWNjODMzYzUyZjhlNDEwZmE0ZWQ2OTQ4MTFhYmFhYWQvdGFibGU6YzgwMjI0MTcwZTBmNDZiYmE3NjcxN2E1ZWQ5ZTM1MGEvdGFibGVyYW5nZTpjODAyMjQxNzBlMGY0NmJiYTc2NzE3YTVlZDllMzUwYV8xNC0zLTEtMS0zNTI3OA_104e0d5b-7155-445d-b367-e58cfe5f9705"
      unitRef="usd">18275000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfMzA3NA_0cf2ddff-aa58-4385-9f44-d36bf91430c3">Debt&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In April 2020, the Company received a $4.8 million loan (the &#x201c;Flotek PPP loan&#x201d;) under the Paycheck Protection Program (&#x201c;PPP&#x201d;), which was created through the Coronavirus Aid, Relief, and Economic Act (&#x201c;CARES Act&#x201d;) and is administered by the U.S. Small Business Administration (&#x201c;SBA&#x201d;). In connection with the acquisition of JP3 in May 2020, the Company assumed a PPP loan of $0.9 million obtained by JP3 (the &#x201c;JP3 PPP loan&#x201d;) in April 2020 prior to its acquisition by Flotek. The PPP loans had a fixed interest rate of 1% and originally a two-year term, maturing in April and May 2022, respectively. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;No payments of principal or interest were required during the years ended December 31, 2021 or 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A portion of the loans may be eligible for forgiveness by the SBA depending on the extent of proceeds used for payroll costs and other designated expenses incurred for up to 24 weeks following loan origination, subject to adjustments for headcount reductions and compensation limits and provided that at least 60% of the eligible costs incurred were used for payroll. Receipt of these funds required the Company to, in good faith, certify that the current economic uncertainty made the loan request necessary to support ongoing operations of the Company. This certification further required the Company to take into account current business activity and the ability to access other sources of liquidity sufficient to support ongoing operations in a manner that was not significantly detrimental to the business.&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The forgiveness of the loans is dependent on the Company having initially qualified for the loans and qualifying for the forgiveness of such loans based on our past and future adherence to the forgiveness criteria. The PPP loans are subject to any new guidance and new requirements released by the Department of the Treasury, which initially indicated that all companies that have received funds in excess of&#160;$2.0&#160;million&#160;will be subject to audit by the SBA to further ensure PPP loans are limited to eligible borrowers in need.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the second quarter of 2021, the Company applied for forgiveness of the JP3 PPP loan with the SBA. In June 2021, the Company received notice from the SBA that the JP3 PPP loan and accrued interest were fully forgiven. Accordingly, during the second quarter of 2021, the Company recorded $0.9&#160;million for the amount of principal and accrued interest forgiven associated with the JP3 PPP loan in other income on the consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In October 2021, the Flotek PPP loan maturity date was extended from April 15, 2022 to April 15, 2025. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has submitted to the SBA for forgiveness of substantially all of the Flotek PPP loan but as of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;December 31, 2021 and as of the date of this filing, the Company has not received a forgiveness notice. If the loan is not forgiven, monthly payments will be due over the remaining term of the loan. Denial of the forgiveness of the Flotek PPP loan will negatively impact the Company&#x2019;s liquidity as discussed in Note 1, &#x201c;Organization and Nature of Operations&#x201d;.  &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-term debt, including current portion, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.300%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Flotek PPP  loan&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;JP3 PPP loan    &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;877&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,665&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less current maturities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,436)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,048)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total long-term debt, net of current portion&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i10873b95c38646059083a419e41435e9_D20200401-20200430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfNTg_402a03f2-61eb-4ec0-9e53-42766df31669"
      unitRef="usd">4800000</us-gaap:ProceedsFromIssuanceOfDebt>
    <ftk:BusinessCombinationAssumedPayrollProtectionProgramLoan
      contextRef="i97e41db4e929441a80ab1533ec54bdc7_D20200501-20200531"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfMzI3_8dbd5b91-fec7-49af-9f02-19ed0cb3966b"
      unitRef="usd">900000</ftk:BusinessCombinationAssumedPayrollProtectionProgramLoan>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="idcd4c6fd7e6c4700bd99b024744a2c3e_I20200430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfNDA1_30726323-aab2-4109-acd0-e500cc2a2c43"
      unitRef="number">0.01</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm
      contextRef="i10873b95c38646059083a419e41435e9_D20200401-20200430"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfMzA3Ng_014af878-e412-43b4-a3ed-7d48a698c6b5">P2Y</us-gaap:DebtInstrumentTerm>
    <ftk:PercentageOfCostRequiredToBeAllocableToPayrollExpense
      contextRef="idcd4c6fd7e6c4700bd99b024744a2c3e_I20200430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfOTA5_945e0001-87ae-4401-aa6b-7a019e8b0596"
      unitRef="number">0.60</ftk:PercentageOfCostRequiredToBeAllocableToPayrollExpense>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i63fc2d2c074647e5b714af2bd8637e95_D20210601-20210630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfMjI2NQ_5c6f3927-ae7b-4850-bfd0-0b5dd7a7b708"
      unitRef="usd">900000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RleHRyZWdpb246MWE2ZDg4ODkwMjY1NGVjYTgxMzlhOWI2NDU0NjBlYzZfMzA3Mw_4f1a32f3-1444-4c87-b937-ae465a99ea3a">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-term debt, including current portion, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.519%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.384%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.300%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Flotek PPP  loan&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;JP3 PPP loan    &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;877&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;Total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,788&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,665&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less current maturities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,436)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,048)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total long-term debt, net of current portion&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,617&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:LongTermDebt
      contextRef="i893b2a822ef4462881c1203cec5419e2_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfMS0xLTEtMS0zMjQ4OA_38dc03ac-4ec5-41c5-9bfa-ee8ae2d97548"
      unitRef="usd">4788000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i887e2390043d43d785e1a809e4ea75cc_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfMS0zLTEtMS0zMjQ4OA_065fd243-a85d-4d9c-81a5-b7e47a61d196"
      unitRef="usd">4788000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i85727d1d46e54e78a61449e9f56995ff_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfMi0xLTEtMS0zMjQ4OA_c8a3a549-bfe5-494f-9a28-2af0fe65f4fa"
      unitRef="usd">0</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i69e33badcbbd4cf195eca43c82fc38e8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfMi0zLTEtMS0zMjQ4OA_28a94094-17eb-45c0-973c-551f052bfb9d"
      unitRef="usd">877000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ia7db4dd5223e4fb19ba152c1a368065b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfMy0xLTEtMS0zMjQ4OA_6c4d959f-1752-41af-9fd4-623aed990fda"
      unitRef="usd">4788000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i5d95fb9dc6b74977a969875c9fc2d2dd_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfMy0zLTEtMS0zMjQ4OA_119db0ff-810d-43d6-9ff4-2e3be7e14d90"
      unitRef="usd">5665000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="ia7db4dd5223e4fb19ba152c1a368065b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfNS0xLTEtMS0zMjQ4OA_58a8a04f-4e87-4fb9-9777-60e3f85b10eb"
      unitRef="usd">1436000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i5d95fb9dc6b74977a969875c9fc2d2dd_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfNS0zLTEtMS0zMjQ4OA_2208de09-6ba5-40a9-90ad-47ab1f308467"
      unitRef="usd">4048000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ia7db4dd5223e4fb19ba152c1a368065b_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfNy0xLTEtMS0zMjQ4OA_1b33ea7b-3acb-4825-9d66-8481e59172e6"
      unitRef="usd">3352000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i5d95fb9dc6b74977a969875c9fc2d2dd_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF82Ny9mcmFnOjFhNmQ4ODg5MDI2NTRlY2E4MTM5YTliNjQ1NDYwZWM2L3RhYmxlOmZiZWI3MDAxMjcyZDQxYTE4MTIwNGE0OWI5MjA0NWQ3L3RhYmxlcmFuZ2U6ZmJlYjcwMDEyNzJkNDFhMTgxMjA0YTQ5YjkyMDQ1ZDdfNy0zLTEtMS0zMjQ4OA_338bff26-82b0-4a28-9758-8d385b28e5f4"
      unitRef="usd">1617000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfNDM5MA_d017382f-17be-4b53-8392-bf3f1eddcab4">Fair Value Measurements&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The Company categorizes financial assets and liabilities into the three levels of the fair value hierarchy. The hierarchy prioritizes the inputs to valuation techniques used to measure fair value and bases categorization within the hierarchy on the lowest level of input that is available and significant to the fair value measurement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 1 &#x2014; Quoted prices in active markets for identical assets or liabilities;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 2 &#x2014; Observable inputs other than Level 1, such as quoted prices for similar assets or liabilities, quoted prices in markets that are not active, or other inputs that are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities; and&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:36pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Level 3 &#x2014; Significant unobservable inputs that are supported by little or no market activity or that are based on the reporting entity&#x2019;s assumptions about the inputs.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value of Other Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The carrying amounts of certain financial instruments, including cash and cash equivalents, restricted cash, accounts receivable, accrued liabilities and accounts payable approximate fair value due to the short-term nature of these accounts. The carrying amount of the Flotek PPP loan approximates its fair value as of December 31, 2021. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Liabilities Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the Company&#x2019;s liabilities that are measured at fair value on a recurring basis and the level within the fair value hierarchy (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.042%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The estimated fair value of the remaining stock performance earn-out provision, with respect to the JP3 transaction, discussed in Note 3, Business Acquisition, is included in accrued liabilities as of December 31, 2021 and 2020. The estimated fair value of the earn-out provision at the end of each period was valued using a Monte Carlo model analyzing 20,000 simulations performed using Geometric Brownian Motion with inputs such as risk-neutral expected growth and volatility. During the third quarter of 2020, the first stock performance target of the contingent consideration was achieved, and the Company accrued a liability of $2.5&#160;million, which was subsequently settled during the fourth quarter of 2020.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Assets Measured at Fair Value on a Nonrecurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s non-financial assets, including property and equipment, operating lease right-of-use assets, goodwill and other intangible assets, are measured at fair value on a non-recurring basis and are subject to fair value adjustment in certain circumstances.  Impairments of long-lived assets of $70&#160;million were recorded during the year ended December 31, 2020. See Note 10, Impairment of Property and Equipment, Operating Lease Right-of-use Assets and Intangible Assets.  Impairments of &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;goodwill of $8.1&#160;million and $11.7&#160;million were recorded during the year ended December 31, 2021 and 2020, respectively.  See Note 8, &#x201c;Goodwill&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management inputs used in fair value measurements in 2021 and 2020 to estimate the fair value of the non-financial assets were classified as Level 3. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Level 3 Rollforward for Assets and Liabilities Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In conjunction with the acquisition of JP3, discussed in Note 3, Business Acquisition, during the year ended December 31, 2020, the Company recorded contingent consideration of $1.2 million. Management inputs used in the fair value measurement were classified as Level 3. &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the third quarter of 2020, the first stock performance target of the contingent consideration was achieved, and the Company accrued a liability of $2.5&#160;million, which was transferred out of Level 3 to a current liability and subsequently settled during the fourth quarter of 2020. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; The Company estimated the fair value of the remaining stock performance earn-out provision as of December 31, 2021 and 2020 and adjusted the estimated fair value of the contingent liability to $0.6&#160;million and $1.4&#160;million, respectively. The Company records changes in the fair value of the contingent consideration and achievement of performance targets in cost of goods sold.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the changes in contingent consideration balances classified as Level 3 balances (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.981%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.273%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.276%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance - beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions / issuances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(808)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Transfer out of Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance - end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfNDM5Mg_1565fce2-7e6e-40b0-be23-ea454624f668">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the Company&#x2019;s liabilities that are measured at fair value on a recurring basis and the level within the fair value hierarchy (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.952%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.034%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.700%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:7.087%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.042%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Contingent consideration&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="i0bad8806f1364b899d22e184dec6a525_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi0xLTEtMS0zMjQ4OA_340f37c2-7756-401a-91bf-32d7c840f3c3"
      unitRef="usd">0</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="i423e1b8e00df431ab97a6db51a37d33a_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi0zLTEtMS0zMjQ4OA_b2633230-da5c-443a-9599-3326cbedfbe6"
      unitRef="usd">0</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="icdb49777de6b4a9487739d30ce33c439_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi01LTEtMS0zMjQ4OA_26bba41d-94e3-4430-8667-5191f59d46dd"
      unitRef="usd">608000</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="i509d787a5d62478bb93a854fe2c6777f_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi02LTEtMS0zMjQ4OA_e40c60c8-24b8-4dbd-9392-afc3dbb8c03d"
      unitRef="usd">608000</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="idc8cc71acc794ba6b9224c879da2ed43_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi04LTEtMS0zMjQ4OA_51edee5b-0b9d-4158-ae91-effe43b712de"
      unitRef="usd">0</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="ib7a124744ebf41d8a4024a4049058484_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi0xMC0xLTEtMzI0ODg_bd6f5959-839f-48ec-8d9b-4ede0b415026"
      unitRef="usd">0</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="i1b538cbc7467452dac4a8c15a8e51bb3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi0xMi0xLTEtMzI0ODg_327978ce-f9f5-49b2-83e6-5abcfb2a9e7c"
      unitRef="usd">1416000</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="ifccf9fb91b1c4aab9c156b3cc4a894f2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOmM2OGY1MGU5MWQ4NjQ1MjI4NTU3OTQ1YTRlMzI2MjMxL3RhYmxlcmFuZ2U6YzY4ZjUwZTkxZDg2NDUyMjg1NTc5NDVhNGUzMjYyMzFfMi0xNC0xLTEtMzI0ODg_d20f3605-4414-4346-b693-a99338544ce6"
      unitRef="usd">1416000</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3
      contextRef="i3e754e576f4444c6956ef3f2bf7bd89d_D20201001-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMjc0ODc3OTA3NTM1Ng_8d6c7f54-b8b8-4e22-8bb0-4ec22d695e82"
      unitRef="usd">2500000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse
      contextRef="i4bdcafad3f7b4bb68603e056a9a78ee4_D20200101-20201231"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMjc0ODc3OTA3ODI1Ng_8363d7aa-751d-4b92-869d-201f09958089"
      unitRef="usd">70000000</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMzg0ODI5MDcwODI1NA_2f50af70-585f-48d4-8c9d-2be074f8921e"
      unitRef="usd">8100000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMzg0ODI5MDcwODI2OA_0ba6197b-fe48-48f2-9a40-d790539b5cc6"
      unitRef="usd">11700000</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="id2815ba24a69464794258b16a9a92ce0_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMzY3OA_060d7708-4082-4184-b8a0-8d4903c6d923"
      unitRef="usd">1200000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3
      contextRef="ifbe07b31ff5a49a7bfea63e23f53555b_D20200701-20200930"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMjc0ODc3OTA3NTM3MA_06d27dbe-47b5-4297-87bb-02b3da83ff17"
      unitRef="usd">2500000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="icdb49777de6b4a9487739d30ce33c439_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMjc0ODc3OTA3NTM4NA_283a7ad1-e9c6-4e3a-b948-cab7bb745a2f"
      unitRef="usd">600000</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:CommitmentsFairValueDisclosure
      contextRef="i1b538cbc7467452dac4a8c15a8e51bb3_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfMjc0ODc3OTA3NTM5OA_1520c4c3-b4ae-43d6-827c-70e471b58ca6"
      unitRef="usd">1400000</us-gaap:CommitmentsFairValueDisclosure>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RleHRyZWdpb246OTQyNDZhMWQzYWViNGMwNTgxZTkzMDhjMDE4NzE3ZmRfNDM5Mw_800b0f64-a396-480b-8d00-f72f785c546b">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the changes in contingent consideration balances classified as Level 3 balances (in thousands): &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:66.981%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.273%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.385%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.276%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance - beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions / issuances&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Change in fair value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(808)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 5.5pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Transfer out of Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance - end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;608&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,416&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfMi01LTEtMS0zMjQ4OA_6c2f1cb6-54f8-4f2c-a9f2-da8028042bd5"
      unitRef="usd">1416000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfMi03LTEtMS0zMjQ4OA_1c213257-46dc-4d8a-bf05-366fbbf18567"
      unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfMy01LTEtMS0zMjQ4OA_9acb454c-6e39-461f-8a41-bd3c972bb6ac"
      unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfMy03LTEtMS0zMjQ4OA_353aaf22-8597-49da-b07f-1fc73a94064e"
      unitRef="usd">1200000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityPurchases>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfNC01LTEtMS0zMjQ4OA_6a07cd0e-29f6-4650-b251-8ae3471291f4"
      unitRef="usd">-808000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfNC03LTEtMS0zMjQ4OA_a423ca78-c454-4ae0-bec3-c7645c93d516"
      unitRef="usd">2716000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfNi01LTEtMS0zMjQ4OA_0abedf0b-57f8-4e9c-979e-b2f68e36a48b"
      unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfNi03LTEtMS0zMjQ4OA_ee1cbfc0-66e7-4f60-887f-56e26f18cb95"
      unitRef="usd">2500000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationLiabilityTransfersOutOfLevel3>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfNy01LTEtMS0zMjQ4OA_29412c35-bf50-4a77-a57c-f77e4bce9089"
      unitRef="usd">608000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83MC9mcmFnOjk0MjQ2YTFkM2FlYjRjMDU4MWU5MzA4YzAxODcxN2ZkL3RhYmxlOjgzNDZkZDJkMWI3NTQ1N2Y4MmJmMzA2OTlhYTFmNTU1L3RhYmxlcmFuZ2U6ODM0NmRkMmQxYjc1NDU3ZjgyYmYzMDY5OWFhMWY1NTVfNy03LTEtMS0zMjQ4OA_fa297938-8824-4661-964f-39cb73cf337c"
      unitRef="usd">1416000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMTIzNw_9a626dd9-6f7f-422e-ac85-0878c04ab7bb">Income Taxes&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the income tax benefit is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.040%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.991%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.914%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.680%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.915%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,115)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(21)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,992)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(116)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(71)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(187)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax benefit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(40)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,179)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of loss before income taxes are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:82.602%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.784%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.015%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.684%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.017%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,037)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(141,864)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(529)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(765)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss before income taxes &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,566)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(142,629)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the U.S. federal statutory tax rate to the Company&#x2019;s effective income tax rate is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:73.830%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.068%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. federal statutory tax rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State income taxes, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-U.S. income taxed at different rates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase (reduction) in tax benefit related to stock-based awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24.9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(20.3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect of tax rate differences of NOL carryback&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Permanent differences related to CARES Act&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective income tax rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On March 27, 2020, the CARES Act was enacted in response to the COVID-19 pandemic. Among other things, the CARES Act provided the ability for taxpayers to carryback a net operating loss (&#x201c;NOL&#x201d;) arising in a taxable year beginning after December 31, 2017 and before January 1, 2021 to each of the five years preceding the year of the loss. Based on analysis of the extended NOL carryback provision, the Company recorded an income tax benefit and related receivable of $6.1&#160;million as of March 31, 2020, which was received in July 2020. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Further, the CARES Act included provisions to assist employers during the pandemic including the Employee Retention Credit (&#x201c;ERC&#x201d;).  The ERC provision provides a refundable payroll tax credit on qualified wages paid by eligible employers to certain employees. On March 11, 2021, the American Rescue Plan Act of 2021 was enacted to combat the ongoing public health and economic impacts of the pandemic and provides some tax relief to businesses in the form of extending and modifying the ERC as well as other provisions.  The Company applied for and received $2.9 million of refundable payroll tax credits during the year ended December 31, 2021. This was recorded as a credit to payroll taxes in SG&amp;amp;A.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Fluctuations in effective tax rates have historically been impacted by permanent tax differences with no associated income tax impact, changes in state apportionment factors, including the effect on state deferred tax assets and liabilities, and non-U.S. income taxed at different rates.  During the years ended December 31, 2021 and 2020, the effective tax rate was further impacted by permanent difference related to the CARES Act provisions and the NOL carryback claim, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Deferred income taxes reflect the tax effect of temporary differences between the carrying amount of assets and liabilities for financial reporting purposes and the value reported for income tax purposes, at the enacted tax rates expected to be in effect when the differences reverse. The components of deferred tax assets and liabilities are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.665%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.000%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.538%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax credit carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory valuation reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,675&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowance for doubtful accounts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,076&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equity compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;399&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;435&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total gross deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(54,875)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48,671)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred tax assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ROU asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(453)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(686)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid insurance and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(271)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(257)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total gross deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(724)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(943)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 2021, the Company had U.S. net operating loss carryforwards of $140.6&#160;million, including $46.4&#160;million expiring in various amounts from 2029 through 2037 which can offset 100% of taxable income and $94.2&#160;million that has an indefinite carryforward period which can offset 80% of taxable income per year. The ability to utilize net operating losses and other tax attributes could be subject to a significant limitation if the Company were to undergo an &#x201c;ownership change&#x201d; for purposes of Section&#160;382 of the Tax Code.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We record a valuation allowance when it is more likely than not that some portion or all of the deferred tax assets will not be realized. The ultimate realization of the deferred tax assets depends on the ability to generate sufficient taxable income of the appropriate character in the future and in the appropriate taxing jurisdictions.As of December 31, 2021 and 2020, the valuation allowance against the net federal and state deferred tax assets was $54.9&#160;million and $48.7 million, respectively.  Except for a state jurisdiction, the Company maintains a full valuation allowance on its deferred tax assets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company intends to reinvest the unremitted earnings of its non-U.S. subsidiaries. As of December 31, 2021, the Company had approximately $8.5&#160;million in unremitted earnings from its foreign jurisdictions.  As a result of the 2017 Tax Act these earnings have been previously taxed in the U.S. although they have not been repatriated to the U.S. However, certain withholding taxes will need to be paid upon repatriation. It is not practicable to estimate the amount of the deferred tax liability on such unremitted earnings.&lt;/span&gt;&lt;/div&gt;The Company performed an evaluation and concluded there are no uncertain tax positions requiring recognition in the Company&#x2019;s financial statements. Tax years which remain subject to examination by tax jurisdictions as of December 31, 2021, are the years ended December 31, 2018 through December 31, 2021 for U.S. federal taxes and the years ended December 31, 2017 through December 31, 2021 for various state tax jurisdictions.</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfNzE0NjgyNTU4NTU4NA_6bd7df30-b7ef-4852-9b15-e02054919ebf">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the income tax benefit is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:83.040%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.991%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.914%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.680%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.915%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,115)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(21)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total current&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,992)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Federal&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(116)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(71)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(187)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income tax benefit&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(40)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,179)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMy0xLTEtMS0zNTEzMg_f4f5e50e-3086-4d54-939d-792487dfa605"
      unitRef="usd">0</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMy0zLTEtMS0zNTEzMg_ef49bdad-fd79-4e0e-85fe-7548717d95ca"
      unitRef="usd">-6115000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfNC0xLTEtMS0zNTEzMg_e019c97d-406a-4b91-bc73-c7da04d78756"
      unitRef="usd">16000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfNC0zLTEtMS0zNTEzMg_07b53be5-0934-4d11-b239-34c8b98c8cb8"
      unitRef="usd">144000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfNS0xLTEtMS0zNTEzMg_748d9207-9276-44fa-a443-5f394fe893e4"
      unitRef="usd">0</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfNS0zLTEtMS0zNTEzMg_19ce6e4d-9d0f-4973-9946-699b02301d54"
      unitRef="usd">-21000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfNi0xLTEtMS0zNTEzMg_5c9328f5-4ceb-4ce3-bf5d-b398aa3d6620"
      unitRef="usd">16000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfNi0zLTEtMS0zNTEzMg_17088c50-4a78-4844-880d-43265b10b874"
      unitRef="usd">-5992000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfOC0xLTEtMS0zNTEzMg_716edaec-5f84-4b08-91e8-1f529b6905ff"
      unitRef="usd">0</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfOC0zLTEtMS0zNTEzMg_5dafc9eb-ddd1-4f9f-a122-b7f90969c0ca"
      unitRef="usd">-116000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfOS0xLTEtMS0zNTEzMg_2cd59c34-86e0-4ef8-b909-8308b0c57a38"
      unitRef="usd">-56000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfOS0zLTEtMS0zNTEzMg_0474f0af-8ddd-4983-85fb-2f790cc6489b"
      unitRef="usd">-71000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMTAtMS0xLTEtMzUxMzI_2d322b6b-3874-4a45-aa5a-1b8df1458cc7"
      unitRef="usd">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMTAtMy0xLTEtMzUxMzI_419100b8-cda0-4d3b-b243-0d25b0d906d3"
      unitRef="usd">0</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMTEtMS0xLTEtMzUxMzI_d4fb2ea4-b703-43b4-af43-6bf33260b86f"
      unitRef="usd">-56000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMTEtMy0xLTEtMzUxMzI_e2c4b5da-d3fb-43eb-9872-3f56abdc3e1f"
      unitRef="usd">-187000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMTItMS0xLTEtMzUxMzI_f12838cd-f7da-4ad9-a6ce-7b8c9aabfe80"
      unitRef="usd">-40000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOmM1YmUyOWRhNGMyZjQzZjI5MGYwYmIxMjg4MjQzMTNlL3RhYmxlcmFuZ2U6YzViZTI5ZGE0YzJmNDNmMjkwZjBiYjEyODgyNDMxM2VfMTItMy0xLTEtMzUxMzI_64be0911-6c26-497d-b50f-45b978451ae4"
      unitRef="usd">-6179000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfNzE0NjgyNTU4NTU4NQ_b42d0950-968c-487e-94bc-4dec38fae520">&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The components of loss before income taxes are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:82.602%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.784%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.015%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.684%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.017%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,037)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(141,864)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(529)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(765)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss before income taxes &lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(30,566)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(142,629)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjM1NmNkMjBhNzVjZTQyNzhhNWI5NWQ2YjQwNjgyZWY5L3RhYmxlcmFuZ2U6MzU2Y2QyMGE3NWNlNDI3OGE1Yjk1ZDZiNDA2ODJlZjlfMi0xLTEtMS0zNTE0MQ_314346ed-aad2-48a8-80d0-00a67cfdabc0"
      unitRef="usd">-30037000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjM1NmNkMjBhNzVjZTQyNzhhNWI5NWQ2YjQwNjgyZWY5L3RhYmxlcmFuZ2U6MzU2Y2QyMGE3NWNlNDI3OGE1Yjk1ZDZiNDA2ODJlZjlfMi0zLTEtMS0zNTE0MQ_323f1335-895d-4711-9302-fdbb87afac9d"
      unitRef="usd">-141864000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjM1NmNkMjBhNzVjZTQyNzhhNWI5NWQ2YjQwNjgyZWY5L3RhYmxlcmFuZ2U6MzU2Y2QyMGE3NWNlNDI3OGE1Yjk1ZDZiNDA2ODJlZjlfMy0xLTEtMS0zNTE0MQ_9d63eb65-b700-4bbe-a488-df12862011f3"
      unitRef="usd">-529000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjM1NmNkMjBhNzVjZTQyNzhhNWI5NWQ2YjQwNjgyZWY5L3RhYmxlcmFuZ2U6MzU2Y2QyMGE3NWNlNDI3OGE1Yjk1ZDZiNDA2ODJlZjlfMy0zLTEtMS0zNTE0MQ_5fa2317a-6f0f-4f0c-a9d6-245d41501dae"
      unitRef="usd">-765000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjM1NmNkMjBhNzVjZTQyNzhhNWI5NWQ2YjQwNjgyZWY5L3RhYmxlcmFuZ2U6MzU2Y2QyMGE3NWNlNDI3OGE1Yjk1ZDZiNDA2ODJlZjlfNC0xLTEtMS0zNTMzNA_cf09dd94-a276-4bc0-a897-b3714668a5e5"
      unitRef="usd">-30566000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjM1NmNkMjBhNzVjZTQyNzhhNWI5NWQ2YjQwNjgyZWY5L3RhYmxlcmFuZ2U6MzU2Y2QyMGE3NWNlNDI3OGE1Yjk1ZDZiNDA2ODJlZjlfNC0zLTEtMS0zNTMzNg_cba2cb30-1814-43f7-a4ae-8748143aadd4"
      unitRef="usd">-142629000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMTI0Mg_f7ca02ae-850a-42b8-becd-583010fcb7e1">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the U.S. federal statutory tax rate to the Company&#x2019;s effective income tax rate is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:73.830%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:62.068%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.790%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.127%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.186%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.129%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S. federal statutory tax rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;State income taxes, net of federal benefit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-U.S. income taxed at different rates&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase (reduction) in tax benefit related to stock-based awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.2)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Increase in valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(24.9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(20.3)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect of tax rate differences of NOL carryback&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Permanent differences related to CARES Act&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effective income tax rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMi01LTEtMS0zMjQ4OA_896bd66a-ce41-43aa-bc49-a10cd6544653"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMi03LTEtMS0zMjQ4OA_6ea7b7e4-790e-4af5-808b-6beb3a1c97e5"
      unitRef="number">0.210</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMy01LTEtMS0zMjQ4OA_dcc9dd66-d907-4e6c-bf21-a652288fe536"
      unitRef="number">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMy03LTEtMS0zMjQ4OA_b56d54c1-64e2-4318-b459-c5426449da7f"
      unitRef="number">0.021</us-gaap:EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfNC01LTEtMS0zMjQ4OA_c2e02ce7-85ec-4b1f-9120-aa7f4f67109a"
      unitRef="number">0.005</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfNC03LTEtMS0zMjQ4OA_b71a0435-3820-488b-8e38-7abe9c03543a"
      unitRef="number">0.002</us-gaap:EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfNy01LTEtMS0zMjQ4OA_11de17a4-4108-46d2-8798-ea709dd673d7"
      unitRef="number">0.001</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfNy03LTEtMS0zMjQ4OA_ac20a74c-e56e-46d5-bed5-1338abde1062"
      unitRef="number">-0.002</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitPercent>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTAtNS0xLTEtMzI0ODg_f6e34d41-fc7e-4e4c-b07a-50c3eb4a2417"
      unitRef="number">-0.249</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTAtNy0xLTEtMzI0ODg_4ba6de88-ddee-4f04-a37f-7aacd4cce34e"
      unitRef="number">-0.203</us-gaap:EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <ftk:EffectiveIncomeTaxRateReconciliationEffectOfTaxRateDifferencesOfNOLCarrybackPercent
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTEtNS0xLTEtMzI0ODg_ec720e9e-6216-463c-afd1-6708e9d143cc"
      unitRef="number">0</ftk:EffectiveIncomeTaxRateReconciliationEffectOfTaxRateDifferencesOfNOLCarrybackPercent>
    <ftk:EffectiveIncomeTaxRateReconciliationEffectOfTaxRateDifferencesOfNOLCarrybackPercent
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTEtNy0xLTEtMzI0ODg_84002fd2-b048-4d13-9f24-db6da71ecfef"
      unitRef="number">0.015</ftk:EffectiveIncomeTaxRateReconciliationEffectOfTaxRateDifferencesOfNOLCarrybackPercent>
    <ftk:EffectiveIncomeTaxRateReconciliationPermanentDifferencesRelatedToCARESAct
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTItNS0xLTEtMzI0ODg_55f06d7a-909e-48f3-88ae-48ecf69257ac"
      unitRef="number">0.026</ftk:EffectiveIncomeTaxRateReconciliationPermanentDifferencesRelatedToCARESAct>
    <ftk:EffectiveIncomeTaxRateReconciliationPermanentDifferencesRelatedToCARESAct
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTItNy0xLTEtMzI0ODg_c8d31ff1-5ff7-4a75-856b-b02373aa1549"
      unitRef="number">0</ftk:EffectiveIncomeTaxRateReconciliationPermanentDifferencesRelatedToCARESAct>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTMtNS0xLTEtMzI0ODg_a18bb299-814b-4984-aea6-252d3cf14948"
      unitRef="number">0.007</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTMtNy0xLTEtMzI0ODg_197933e8-4e14-4539-b038-cafd7f0ab800"
      unitRef="number">0</us-gaap:EffectiveIncomeTaxRateReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTQtNS0xLTEtMzI0ODg_aeee62fc-8ba2-45ab-a9fe-04ec481f06fd"
      unitRef="number">0.001</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjAwODc4OWFjYzdmYjRjMTY5ZDQ2YTQwMzEzMzZhODVhL3RhYmxlcmFuZ2U6MDA4Nzg5YWNjN2ZiNGMxNjlkNDZhNDAzMTMzNmE4NWFfMTQtNy0xLTEtMzI0ODg_d67b9fd6-2df5-4a7a-a12a-02b5ae12869f"
      unitRef="number">0.043</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxReceivable
      contextRef="i81a6d29c67e6465096b777e1505a6d3d_I20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMzI5ODUzNDg5NTQwMQ_6f97a08d-ed15-4437-95ca-fec5489dbeae"
      unitRef="usd">6100000</us-gaap:IncomeTaxReceivable>
    <ftk:PayrollTaxCredit
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMjc0ODc3OTA4Mjg1OA_463184c7-d9a2-42a2-bcdd-70d46738c9c7"
      unitRef="usd">2900000</ftk:PayrollTaxCredit>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMjc0ODc3OTA3NDQ4Mw_29178a36-fe3b-4f80-a81d-bfcb486aaa83">The components of deferred tax assets and liabilities are as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:65.665%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.000%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.538%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.297%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net operating loss carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,589&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Intangible assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,026&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tax credit carryforwards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,001&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,802&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Goodwill&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,284&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,087&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,229&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,750&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,945&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Inventory valuation reserves&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,675&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowance for doubtful accounts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,184&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,076&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;401&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;657&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equity compensation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;399&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;435&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;304&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total gross deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;49,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Valuation allowance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(54,875)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48,671)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total deferred tax assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,003&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferred tax liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;ROU asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(453)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(686)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid insurance and other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(271)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(257)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total gross deferred tax liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(724)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(943)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net deferred tax assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;223&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMy0xLTEtMS0zNTM4NQ_6d015fa2-045a-43ee-a543-8fb0a5e0c37b"
      unitRef="usd">33166000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMy0zLTEtMS0zNTM4Nw_3bc4e069-8ffe-4fb6-9124-0369d1280eb5"
      unitRef="usd">23589000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <ftk:DeferredTaxAssetsIntangibleAssets
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNC0xLTEtMS00NTkwMw_76817b47-d7da-40bd-b74e-6a6f61792f42"
      unitRef="usd">2916000</ftk:DeferredTaxAssetsIntangibleAssets>
    <ftk:DeferredTaxAssetsIntangibleAssets
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNC0zLTEtMS00NTkwNA_da34ef07-77cd-4c72-bff2-1239ed84c963"
      unitRef="usd">6026000</ftk:DeferredTaxAssetsIntangibleAssets>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNS0xLTEtMS00NTkwOQ_632e23c2-7a7d-40e5-b225-9454f6659fc2"
      unitRef="usd">4001000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNS0zLTEtMS00NTkxMQ_c7ba0622-0333-4eda-8723-056b452f17f0"
      unitRef="usd">3802000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <ftk:DeferredTaxAssetsGoodwill
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNi0xLTEtMS00NTkxNQ_fe629509-bf16-4e9c-b92e-869bd7dd2cc8"
      unitRef="usd">5284000</ftk:DeferredTaxAssetsGoodwill>
    <ftk:DeferredTaxAssetsGoodwill
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNi0zLTEtMS00NTkxNw_20738054-dafa-4611-b951-07ae78080f6a"
      unitRef="usd">4087000</ftk:DeferredTaxAssetsGoodwill>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNC0xLTEtMS0zNTM4NQ_64417a25-77be-4f25-92de-4be718abccf3"
      unitRef="usd">3229000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNC0zLTEtMS0zNTM4Nw_55337ad2-9f5a-43f4-b627-ab2d8f2122ab"
      unitRef="usd">3640000</us-gaap:DeferredTaxAssetsPropertyPlantAndEquipment>
    <ftk:DeferredTaxAssetsLeaseLiability
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfOC0xLTEtMS00NTkyMA_335aa641-6a11-44fe-8c5a-e461541b592f"
      unitRef="usd">1750000</ftk:DeferredTaxAssetsLeaseLiability>
    <ftk:DeferredTaxAssetsLeaseLiability
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfOC0zLTEtMS00NTkyMg_52a9fc6f-ff1d-49b1-bec9-d3d1f5c57def"
      unitRef="usd">1945000</ftk:DeferredTaxAssetsLeaseLiability>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfOS0xLTEtMS00NTkyNg_77d06adc-e97e-4f48-9ca7-86358ec9fb02"
      unitRef="usd">2675000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfOS0zLTEtMS00NTkyOA_bde6a46c-7368-4c4b-b73f-700794a978a2"
      unitRef="usd">2093000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTAtMS0xLTEtNDU5MzI_4118cd1c-233b-4244-91d8-8272d38505c3"
      unitRef="usd">1184000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTAtMy0xLTEtNDU5MzM_8fd6a628-e8d5-40fd-aea5-854cd670b1d3"
      unitRef="usd">1134000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNS0xLTEtMS0zNTM4NQ_50008c7c-0082-4c41-a107-c84e5f09549b"
      unitRef="usd">569000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfNS0zLTEtMS0zNTM4Nw_a1f86cc2-3521-4f9b-86c5-e0bba1353e04"
      unitRef="usd">2076000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfOC0xLTEtMS0zNTM4NQ_973959fa-696e-4b51-bd34-8966f3ff0f97"
      unitRef="usd">401000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfOC0zLTEtMS0zNTM4Nw_76932d9d-795c-4fc8-ac82-00fa65f081f2"
      unitRef="usd">657000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTQtMS0xLTEtNDU5MzY_8d89ef09-9a1b-4a42-8f94-d1e55f9adf42"
      unitRef="usd">399000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTQtMy0xLTEtNDU5Mzc_37ea3ffc-b669-4f1b-a302-4346b275d177"
      unitRef="usd">435000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTUtMS0xLTEtMzUzODU_2e7c0222-8254-4975-b7dc-d57625f5229b"
      unitRef="usd">304000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTUtMy0xLTEtMzUzODc_2df57f13-4527-4a51-ba73-d2df4775bccf"
      unitRef="usd">353000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTYtMS0xLTEtMzUzODU_66d90c04-bd42-4b9e-9eb5-aa3798b02e63"
      unitRef="usd">55878000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTYtMy0xLTEtMzUzODc_05dd74b8-cf4a-4122-940c-0cb261b50b26"
      unitRef="usd">49837000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTctMS0xLTEtMzUzODU_9b38c2d4-8ecc-43d3-ae8b-de0c97188b83"
      unitRef="usd">54875000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTctMy0xLTEtMzUzODc_a52d5b36-f5c6-432a-b902-b585f6804489"
      unitRef="usd">48671000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTgtMS0xLTEtMzUzODU_ee88479b-403c-47d7-8148-adc3b750c16a"
      unitRef="usd">1003000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMTgtMy0xLTEtMzUzODc_19d94de8-3235-4217-a3ca-827bc357c575"
      unitRef="usd">1166000</us-gaap:DeferredTaxAssetsNet>
    <ftk:DeferredTaxLiabilitiesRightOfUseAsset
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjItMS0xLTEtMzUzODk_8e432dfa-d55f-4bf0-a339-f54903f09c49"
      unitRef="usd">453000</ftk:DeferredTaxLiabilitiesRightOfUseAsset>
    <ftk:DeferredTaxLiabilitiesRightOfUseAsset
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjItMy0xLTEtMzUzOTE_77ecf8b7-0fed-4142-94e7-f0bbef8e7985"
      unitRef="usd">686000</ftk:DeferredTaxLiabilitiesRightOfUseAsset>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjYtMS0xLTEtMzUzODk_6c36e0c0-66e4-4660-b112-8dd46eb819a6"
      unitRef="usd">271000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredTaxLiabilitiesPrepaidExpenses
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjYtMy0xLTEtMzUzOTE_bcfc8037-e33e-446e-a6f9-9e9d04fdc6e0"
      unitRef="usd">257000</us-gaap:DeferredTaxLiabilitiesPrepaidExpenses>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjctMS0xLTEtMzUzODk_870c9d22-614b-45f2-a79d-ac3f3466cb0a"
      unitRef="usd">724000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjctMy0xLTEtMzUzOTE_60de524b-1267-4ced-9507-7c66692faebb"
      unitRef="usd">943000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjgtMS0xLTEtMzUzODk_d4e899ff-da25-48ef-bf1d-4dc2618ba201"
      unitRef="usd">279000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RhYmxlOjZmMjJhZDUzNDZmMTRhN2U5NDc5NDExNGJkMDJlZWVhL3RhYmxlcmFuZ2U6NmYyMmFkNTM0NmYxNGE3ZTk0Nzk0MTE0YmQwMmVlZWFfMjgtMy0xLTEtMzUzOTE_e88ca861-ca6c-4c53-be51-f3efe5667c6b"
      unitRef="usd">223000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMjU4Mzg1MjMyNjg1ODA_a51ce0a6-43d5-492d-a7b0-46903f6979da"
      unitRef="usd">140600000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMjU4Mzg1MjMyNjg1OTY_2e0454b4-d3e2-49ea-bf3b-9dc45138519f"
      unitRef="usd">46400000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration>
    <ftk:PercentageOfNetOperatingLossCarryforwardThatCanOffsetTaxableIncome
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfOTg5NTYwNDY1MjE2Nw_2de5c899-db0f-482d-b003-bad8aa02e3d8"
      unitRef="number">1</ftk:PercentageOfNetOperatingLossCarryforwardThatCanOffsetTaxableIncome>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMjU4Mzg1MjMyNjg2MTE_6b5a4a84-fd0a-411c-b514-46ed7cba5f27"
      unitRef="usd">94200000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsNotSubjectToExpiration>
    <ftk:PercentageOfIndefinteCarryforwardThatCanOffsetTaxableIncome
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfOTg5NTYwNDY1MjI1Nw_2b4b4bba-fb31-4670-8f44-27ed7e168dc0"
      unitRef="number">0.80</ftk:PercentageOfIndefinteCarryforwardThatCanOffsetTaxableIncome>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMjU4Mzg1MjMyNjg2MjY_1974ff60-00ca-404a-a8bf-21fe024a86e4"
      unitRef="usd">54900000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfOTg5NTYwNDY1MzU5Nw_d3a578bc-0b88-414e-9350-e3dcd36db8c4"
      unitRef="usd">48700000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:UndistributedEarningsOfForeignSubsidiaries
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83My9mcmFnOmFmMzE2MGQ1MGE4NDQyY2FhYjc1NjYzNjNmM2U4ZGVhL3RleHRyZWdpb246YWYzMTYwZDUwYTg0NDJjYWFiNzU2NjM2M2YzZThkZWFfMzI5ODUzNDg5NTQ2Mw_06b62389-5651-4d5e-8e29-60678175bb9c"
      unitRef="usd">8500000</us-gaap:UndistributedEarningsOfForeignSubsidiaries>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMjgyNQ_f3b043ea-e856-4052-8b93-79cb5a0036ee">Commitments and Contingencies&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Litigation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is subject to routine litigation and other claims that arise in the normal course of business. Except as disclosed below, management is not aware of any pending or threatened lawsuits or proceedings that are expected to have a material effect on the Company&#x2019;s financial position, results of operations or liquidity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Terpene Supply Agreement&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of December 31, 2020, the Company&#x2019;s consolidated balance sheet included an accrued liability of $9.4&#160;million associated with the terpene supply agreement with Florida Chemical Company, LLC (&#x201c;FCC&#x201d;), a wholly owned subsidiary of Archer-Daniels-Midland Company (&#x201c;ADM&#x201d;).  The Company calculated the liability based on its expected usage of terpene in blended products being less than the minimum quantities of terpene required to be purchased under the terpene supply agreement and the expected selling prices of the excess terpene. Losses for the year ended December 31, 2020 on the terpene contract totaled $11.7&#160;million and was recognized in cost of goods sold in the consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On March 26, 2021, Flotek Industries, Inc. and Flotek Chemistry, LLC (&#x201c;Flotek Chemistry&#x201d;), a wholly-owned subsidiary of the Company, filed a lawsuit against ADM, FCC and other parties in state court in Harris County, Texas. The lawsuit claimed damages relating to the terpene supply agreement between Flotek Chemistry and FCC and related breaches of fiduciary duty. Contemporaneously with the filing of the suit, Flotek Chemistry delivered a notice of termination of the terpene supply agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On April 5, 2021, ADM and FCC filed a lawsuit in the Delaware Court of Chancery seeking to enjoin the lawsuit filed in Texas and claiming damages under the terpene supply agreement and other matters. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 29, 2021, the Company reached agreement with all parties resolving all claims between the parties (&#x201c;the ADM Settlement&#x201d;) that resulted in the termination of the terpene supply agreement and a settlement payment of $1.75&#160;million due from Flotek.  In accordance with the terms of  the ADM Settlement, the Company reduced the accrued liability associated with the terpene supply agreement to $1.75&#160;million and recorded a gain of $7.6&#160;million in cost of goods sold in the consolidated statement of operations for the year ended December 31, 2021. The one-time payment of $1.75&#160;million from Flotek to ADM was paid on January 3, 2022 and was included as restricted cash on the consolidated balance sheet as of December 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Former CEO Matter&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the year ended December 31, 2021, Flotek commenced an internal investigation into the activities of John Chisholm (Flotek&#x2019;s previous CEO) due to irregularities in expenses and transactions during the years from 2014 to 2018.  The investigation revealed evidence of related party transactions/self-dealing, inappropriate personal expenses, and general corporate waste.  Flotek&#x2019;s board engaged a third party to review the findings of the investigation.  After the third-party review, Flotek concluded that its current and historical financial statements can be relied upon, that proper action had been taken, and that no members of current management were implicated in any way. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Beginning in December 2021, Flotek sent demand letters to, and subsequently filed arbitration or other legal proceedings against, John Chisholm, Casey Doherty/Doherty &amp;amp; Doherty LLP (Flotek&#x2019;s former outside general counsel) and Moss Adams LLP (Flotek&#x2019;s former independent public audit firm) to recover damages.  John Chisholm subsequently filed a counterclaim against Flotek in the arbitration proceeding for his remaining severance (currently accrued by the Company, but payment for which was suspended).  Although Flotek believes its claims are supported by the available evidence, the timing and amount of any outcome cannot reasonably be predicted. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Other Commitments and Contingencies&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company is subject to concentrations of credit risk within trade accounts receivable, as the Company does not generally require collateral as support for trade receivables. In addition, the majority of the Company&#x2019;s cash is&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; invested in three major U.S. financial institutions and balances often exceed insurable amounts.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:LossContingencyAccrualAtCarryingValue
      contextRef="i8315ebe028be4b92aaa675a5031c5080_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMTY0_c1d87803-ba8e-4bff-801e-5e477ba3b006"
      unitRef="usd">9400000</us-gaap:LossContingencyAccrualAtCarryingValue>
    <us-gaap:GainLossRelatedToLitigationSettlement
      contextRef="i077398da13e241e7a30a3f81ec2829f4_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMjc0ODc3OTA3NTUzOQ_45594987-6a31-444a-b3b0-f484b8e0a71a"
      unitRef="usd">11700000</us-gaap:GainLossRelatedToLitigationSettlement>
    <us-gaap:LossContingencyAccrualPayments
      contextRef="i1ca9b002b12d46ca93d96081006fff75_D20211029-20211029"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMjU4Mzg1MjMyNjEzMjU_9e99d6cc-e217-432d-822c-55a79d19519d"
      unitRef="usd">1750000</us-gaap:LossContingencyAccrualPayments>
    <us-gaap:LossContingencyAccrualAtCarryingValue
      contextRef="if4501c19529e4eee99b6dabc5b7d3479_I20211029"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMjc0ODc3OTA3NTQ1NA_e8a8da2f-6111-409f-95e9-27953507d832"
      unitRef="usd">1750000</us-gaap:LossContingencyAccrualAtCarryingValue>
    <us-gaap:GainLossRelatedToLitigationSettlement
      contextRef="i1ca9b002b12d46ca93d96081006fff75_D20211029-20211029"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMjc0ODc3OTA3NTQ2OQ_b3f271b4-db4d-4a09-a58a-13c49137dd59"
      unitRef="usd">7600000</us-gaap:GainLossRelatedToLitigationSettlement>
    <us-gaap:LitigationSettlementAmountAwardedToOtherParty
      contextRef="i1ca9b002b12d46ca93d96081006fff75_D20211029-20211029"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83Ni9mcmFnOjJlOGI5NmNhMmU3NDQ2YWU5ZmJjMmFmMWE4MjBkMTIxL3RleHRyZWdpb246MmU4Yjk2Y2EyZTc0NDZhZTlmYmMyYWYxYTgyMGQxMjFfMTc1OA_734b8da0-903a-4b3c-b74c-1e199ebb6b65"
      unitRef="usd">1750000</us-gaap:LitigationSettlementAmountAwardedToOtherParty>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfNDA2_f1f59382-d6db-4036-9c95-a10c63d9431d">Stockholders&#x2019; Equity&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Common and Preferred Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 5, 2020, the shareholders of the Company approved an amendment to the Company&#x2019;s Amended and Restated Certificate of Incorporation, as previously amended, to increase the authorized shares of common stock from 80 million shares to 140 million shares of common stock, par value $0.0001 per share, and 100,000 shares of one or more series of preferred stock, par value $0.0001 per share. The additional authorized shares are available for corporate purposes, including acquisitions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the first quarter 2021, the Company identified 0.6&#160;million shares that were improperly included in the December 31, 2020 issued share count, and the Company adjusted the issued share count presented on the statement of stockholders&#x2019; equity. This adjustment was not material to the December 31, 2020 consolidated financial statements or basic and diluted earnings per share.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the changes in common shares issued is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.951%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.933%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.082%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year&#160;ended&#160;December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares issued at the beginning of the year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,669,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,656,897&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Correction to issued share count at beginning of the year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(613,419)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued upon sale of common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued upon exercise of stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued as restricted stock award grants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,702,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,114,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued upon vesting of restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards forfeited and cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(284,334)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares withheld to cover taxes and cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(76,353)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued in business combination to acquire JP3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,500,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares issued at the end of the year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,483,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,669,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Treasury Stock&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company accounts for treasury stock using the cost method and includes treasury stock as a component of stockholders&#x2019; equity. During the years ended December&#160;31, 2021 and 2020, the Company purchased 155,317&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; shares and 145,703&lt;/span&gt; shares, respectively, of the Company&#x2019;s common stock at market value as payment of income tax withholding owed by employees upon the vesting of restricted shares and the exercise of stock options. Shares issued as restricted stock awards to employees under the 2018 long-term incentive plan that were forfeited are accounted for as treasury stock. During the years ended December 31, 2021 and 2020, forfeited stock awards returned to treasury stock were 421,839 shares and 1,301,470 shares, respectively.</us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i440391a5b49148ac90645dc8caa8b863_I20200504"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfOTg5NTYwNDY1MDY0NA_c6474bcd-ddcc-4542-a51c-8a2ad93e3f55"
      unitRef="shares">80000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i2995c24a70ed449fa0de5ad2a4fa875c_I20200505"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfOTg5NTYwNDY1MDY1OA_4257af9e-45c4-4b59-8e73-0abf4fec8c49"
      unitRef="shares">140000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i2995c24a70ed449fa0de5ad2a4fa875c_I20200505"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfOTg5NTYwNDY1MDY5Ng_8641ac8f-12d9-410c-a443-2b0c447dd34f"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i2995c24a70ed449fa0de5ad2a4fa875c_I20200505"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfOTg5NTYwNDY1MDcxNQ_d55727fe-7964-41b2-bf6b-60ef2779d901"
      unitRef="shares">100000</us-gaap:PreferredStockSharesAuthorized>
    <ftk:PreferredStockMinimumNumberOfSeriesAuthorized
      contextRef="id669ad1c5a3843429ac64570abdbcda5_D20200505-20200505"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfOTg5NTYwNDY1MDcyOQ_3069cbc3-9f91-4838-b73b-37cb4050282f"
      unitRef="series">1</ftk:PreferredStockMinimumNumberOfSeriesAuthorized>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="i2995c24a70ed449fa0de5ad2a4fa875c_I20200505"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfOTg5NTYwNDY1MDc3OA_76f9de29-7793-4ecb-9ddd-6ab48afca7c3"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesIssued
      contextRef="ie7110f08b6bd49789b675f906b58958b_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfMjc0ODc3OTA3MzU5NA_dabe3296-15a7-4a1f-a89d-9575b8561c69"
      unitRef="shares">600000</us-gaap:CommonStockSharesIssued>
    <us-gaap:ScheduleOfCommonStockOutstandingRollForwardTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfMzI5ODUzNDg4NTYwOQ_55d057fd-400e-4169-b757-705a9e72a2d8">&lt;div style="margin-top:8pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A reconciliation of the changes in common shares issued is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:63.951%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.933%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.534%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.082%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year&#160;ended&#160;December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares issued at the beginning of the year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,669,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,656,897&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Correction to issued share count at beginning of the year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(613,419)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued upon sale of common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;200,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued upon exercise of stock options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;111,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued as restricted stock award grants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,702,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,114,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued upon vesting of restricted stock units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,241&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restricted stock awards forfeited and cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(284,334)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares withheld to cover taxes and cancelled&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(76,353)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Issued in business combination to acquire JP3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,500,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Shares issued at the end of the year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79,483,837&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;78,669,414&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCommonStockOutstandingRollForwardTableTextBlock>
    <us-gaap:CommonStockSharesIssued
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMi0xLTEtMS0zNTE4Mw_eff28d70-324b-4d0b-bb00-9a2498885e16"
      unitRef="shares">78669414</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMi0zLTEtMS0zNTE4Mw_7b0a6f25-f14f-4398-a48e-4f4c4024b9ed"
      unitRef="shares">63656897</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i4506bd980abe49e4beb43486cb6c1d52_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMy0xLTEtMS0zNTE4Mw_7355c67b-1c1e-4b5c-9d23-c2d945001a57"
      unitRef="shares">613419</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i667bc9edbea84444a41a21c971524c7e_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMy0zLTEtMS0zNTE4Mw_b3f83595-fb76-4f68-a2f9-d11f9edfc701"
      unitRef="shares">0</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfNC0xLTEtMS0zNTE4Mw_60cc6120-43e3-4015-9e93-e269494a606e"
      unitRef="shares">0</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfNC0zLTEtMS0zNTE4Mw_49602594-4b08-4a9e-89bb-332f313a0c60"
      unitRef="shares">200000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfNy0xLTEtMS0zNTE4Mw_c2649abd-dd6a-4fb9-b823-6eeeb687debd"
      unitRef="shares">0</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfNy0zLTEtMS0zNTE4Mw_5aff3f7c-9350-4fcc-a44b-35e5e3b52ddc"
      unitRef="shares">111298</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfOS0xLTEtMS0zNTE4Mw_0570f255-e671-416c-9680-b3fa5dcda6f3"
      unitRef="shares">1702289</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfOS0zLTEtMS0zNTE4Mw_999e2fd4-9e57-44f9-a286-e64c0e925a86"
      unitRef="shares">3114978</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <ftk:StockIssuedDuringPeriodSharesRestrictedStockUnitsVested
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTAtMS0xLTEtMzUxODM_0730edef-7656-4a05-a02a-3cc8a531f3fe"
      unitRef="shares">86240</ftk:StockIssuedDuringPeriodSharesRestrictedStockUnitsVested>
    <ftk:StockIssuedDuringPeriodSharesRestrictedStockUnitsVested
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTAtMy0xLTEtMzUxODM_feabeb07-4653-4d83-a0e7-4da19eab09e5"
      unitRef="shares">86241</ftk:StockIssuedDuringPeriodSharesRestrictedStockUnitsVested>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTEtMS0xLTEtMzUxODM_4713712e-caf0-4e87-b331-45a2053f6beb"
      unitRef="shares">284334</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTEtMy0xLTEtMzUxODM_dfa80e20-1257-446e-88c5-d4a389b7e28c"
      unitRef="shares">0</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited>
    <ftk:ShareBasedPaymentArrangementSharesWithheldForTaxWithholdingObligationAndCancelled
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTItMS0xLTEtNDM1NTY_497a8f08-90c3-4d70-8033-b6c28498723f"
      unitRef="shares">76353</ftk:ShareBasedPaymentArrangementSharesWithheldForTaxWithholdingObligationAndCancelled>
    <ftk:ShareBasedPaymentArrangementSharesWithheldForTaxWithholdingObligationAndCancelled
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTItMy0xLTEtNDM3Njg_6f8921fd-fc97-493f-acbd-a2a464990717"
      unitRef="shares">0</ftk:ShareBasedPaymentArrangementSharesWithheldForTaxWithholdingObligationAndCancelled>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTItMS0xLTEtMzUxODM_2c9250f9-37a9-478e-8cba-ea2f2309a7e0"
      unitRef="shares">0</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:StockIssuedDuringPeriodSharesAcquisitions
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTItMy0xLTEtMzUxODM_b8a5a207-08d2-4ce6-9ea5-300dc45246ef"
      unitRef="shares">11500000</us-gaap:StockIssuedDuringPeriodSharesAcquisitions>
    <us-gaap:CommonStockSharesIssued
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTQtMS0xLTEtMzUxODM_37407eef-c55e-4a2b-972b-e45eea570d0b"
      unitRef="shares">79483837</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RhYmxlOmQ3N2I3MTFiYjg5NzRmMzViYjFmMDg0ZGIzMzlhYmI5L3RhYmxlcmFuZ2U6ZDc3YjcxMWJiODk3NGYzNWJiMWYwODRkYjMzOWFiYjlfMTQtMy0xLTEtMzUxODM_4ed65b85-75eb-4746-9a27-80deef5692a1"
      unitRef="shares">78669414</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfMjc0ODc3OTA3MzU1Ng_e24e30f5-6e0e-4340-8fec-b933b1f0989d"
      unitRef="shares">155317</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfMjc0ODc3OTA3MzU2NQ_b4e5cdb3-03a1-4322-92fb-12575f1309db"
      unitRef="shares">145703</us-gaap:StockRepurchasedDuringPeriodShares>
    <ftk:TreasuryStockSharesForfeited
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfMjc0ODc3OTA3MzU3NA_bd564623-9554-466d-a239-b4ef4a57441d"
      unitRef="shares">421839</ftk:TreasuryStockSharesForfeited>
    <ftk:TreasuryStockSharesForfeited
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF83OS9mcmFnOjhmZWUwOWUyY2NhZjRlMDQ4ZjVkOWFiOGFjZTcwZjc0L3RleHRyZWdpb246OGZlZTA5ZTJjY2FmNGUwNDhmNWQ5YWI4YWNlNzBmNzRfMjc0ODc3OTA3MzU4Mw_79e84fb4-05e1-49e1-a66e-6da5d6dd6f1e"
      unitRef="shares">1301470</ftk:TreasuryStockSharesForfeited>
    <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc1OTcz_002c68b6-6bdf-4fac-a38a-54ad3719ae95">Stock-Based Compensation and Other Benefit Plans&lt;div style="margin-bottom:9pt;margin-top:9pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Incentive Plans &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stockholders approved long-term incentive plans in 2019, 2018, 2014, 2010 and 2007 (the &#x201c;2019 Plan,&#x201d; the &#x201c;2018 Plan,&#x201d; the &#x201c;2014 Plan,&#x201d; the &#x201c;2010 Plan&#x201d; and the &#x201c;2007 Plan,&#x201d; respectively) under which the Company may grant equity awards to officers, key employees, non-employee directors and service providers in the form of stock options, restricted stock, restricted stock units, and certain other incentive awards. The maximum number of shares that may be issued under the 2019 Plan, 2018 Plan, 2014 Plan, 2010 Plan and 2007 Plan are 1.0&#160;million, 3.0&#160;million, 5.2&#160;million, 6.0&#160;million and 2.2&#160;million, respectively. At December 31, 2021, the Company had a total of &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;4.2&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; shares remaining to be granted under the 2019 Plan and 2018 Plan. Shares may no longer be granted under the 2007, 2010 and 2014 Plans. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All stock options are granted with an exercise price equal to the market value of the Company&#x2019;s common stock on the date of grant. During the years ended December 31, 2021 and 2020, 1.4&#160;million and 1.3&#160;million market-based stock options were granted, respectively. The market-based options are restricted until criteria defined in the agreements are met. Proceeds received from stock option exercises are credited to common stock and additional paid-in capital, as appropriate. The Company uses historical data to estimate pre-vesting option forfeitures. Estimates are adjusted when actual forfeitures differ from the estimate. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense is recorded for all equity awards expected to vest.&#160;During the years ended December 31, 2021 and 2020, 0.2&#160;million and 0.1&#160;million stock options vested, respectively, and 0.8&#160;million and 0.6&#160;million stock options were forfeited, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock option activity for the years ended December 31, 2021 and 2020, are as follows&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:428.25pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:214.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:67.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:7.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:67.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:61.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:45pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,000,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,327,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(111,298)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(556,497)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,660,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,448,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.88&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(777,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.02&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(50,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,281,875&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested or expected to vest at&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,775,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth significant assumptions used in the Monte Carlo model for market-based options to determine the fair value of the option&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;s at the date of grant:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:411.00pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:207.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:94.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:6.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:94.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:26pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year Ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year Ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:24pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Market-Based Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Market-Based Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility of common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected life of options in years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December 31, 2021, the unrecognized compensation cost related to stock options was&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; $3.3&#160;million.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company grants employees and directors either time-vesting or market-based restricted shares in accordance with terms specified in the Restricted Stock Agreements. During the year ended December 31, 2021, all &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;of the restricted stock granted were time-vesting restricted shares. Grantees of restricted shares retain voting rights &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;for the granted shares. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:27pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Time-vesting restricted shares vest after a stipulated period has elapsed after the date of grant, generally three years. Certain time-vested shares have also been issued with a portion of the shares granted vesting immediately. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;padding-left:27pt;text-align:justify;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt"&gt;Market-based restricted shares are issued with criteria defined over a designated period and vest only when, and if, the outlined criteria are met. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock share activity for the years ended December 31, 2021 and 2020, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.468%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.764%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restricted Stock Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&#160;Fair&lt;br/&gt;Value&#160;at&#160;Date&#160;of&lt;br/&gt;Grant&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,629,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.66&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,114,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(711,988)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,236,910)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,795,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,702,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,453,854)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,275,172)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,768,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total fair value of restricted stock that vested during the years ended December 31, 2021 and 2020 was $2.5&#160;million and $2.1&#160;million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December 31, 2021, unrecognized compensation expense related to non-vested restricted stoc&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;k wa&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;s $1.9&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. The unrecognized compensation expense is expected to be recognized over a weighted-average period of&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; 1.8 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the years ended December 31, 2020, the Company granted &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;0.9&#160;million&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; market-based restricted stock units (&#x201c;RSU&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;s&#x201d;). The performance period for these RSUs continues until December 22, 2024. No RSU&#x2019;s were granted during the year ended December 31, 2021.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock units activity for the years ended December 31, 2021 and 2020, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.468%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.764%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&#160;Fair&lt;br/&gt;Value&#160;at&#160;Date&#160;of&lt;br/&gt;Grant&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RSUs at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,038,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020 granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;922,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020 forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(733,711)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RSUs at January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,227,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021 granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021 forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(184,173)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RSUs at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,043,376&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December 31, 2021, unrecognized compensation expense related to &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;restricted stock units was $1.0&#160;million. The unrecognized compensation expense is expected to be recognized over a weighted-average period of 2.1 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s Employee Stock Purchase Plan (&#x201c;ESPP&#x201d;) was approved by stockholders in 2012. The Company registered 500,000 shares of its common stock, currently held as treasury shares, for issuance under the ESPP. The purpose of the ESPP is to provide employees with an opportunity to purchase shares of the Company&#x2019;s common stock through accumulated payroll deductions. The ESPP allows participants to purchase common stock at a purchase price equal to 85% of the fair market value of the common stock on the last business day of a three-month offering period which coincides with calendar quarters. Payroll deductions may not exceed 10% of an employee&#x2019;s compensation and participants may not purchase more than 1,000 shares in any one offering period. In addition, for each calendar year, an employee may not be granted purchase rights valued over $25,000, as determined at the time such purchase right is granted. The fair v&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;alue of the discount associated with shares purchased under the plan is recognized as stock-based compensation expense and was&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; $0.02 and $0.1&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; for the years &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;ended December 31, 2021 and 2020, respectively. The total fair value of the shares purchased under the plan during each of the years ended December 31, 2021 and 2020 was&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; $0.2&#160;million and $0.1&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, respectively&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. The employee payment associated with participation in the plan occurs through payroll deductions. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Stock-Based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Non-cash stock-based compensation expense related to stock options, restricted stock, restricted stock unit grants and stock purchased under the Company&#x2019;s ESPP was&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; $3.8&#160;million&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; and $3.0&#160;million during the years ended December 31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;401(k) Retirement Plan&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company maintains a 401(k) retirement plan for the benefit of eligible employees in the U.S. All employees are eligible to participate in the plan upon employment. The Company currently matches contributions at 100% of up to 2% of an employee&#x2019;s compensation&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. &lt;/span&gt;&lt;/div&gt;During the years ended December 31, 2021 and 2020, compensation expense included $0.2&#160;million and $0.2&#160;million, respectively, related to the Company&#x2019;s 401(k) match.</us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i75a20287b0114e4192e4a0cca283cc61_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzA1_1f8a6aaa-f47e-4a6b-88ab-fb6d3a7f8cec"
      unitRef="shares">1000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i7e785df9888e45b8b07bbe7046966552_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzE4_6dcc3704-e348-4eaa-bf8e-94bbeee40882"
      unitRef="shares">3000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i6e112da938c545c0af752fce3ebac29b_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzMx_82176ea1-6171-43c3-aa81-aa1f0722e439"
      unitRef="shares">5200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i43bee5c9250943a6956dd0e7d1a12950_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzQ0_b594ed04-c1da-4e97-b53a-e3d0761dd2b3"
      unitRef="shares">6000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i6d84e9fb7f3b41db9693c717db8a605c_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzU3_2f459c23-e379-4e29-b596-39a962733f7f"
      unitRef="shares">2200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="ie99535a5332d4ed9928c465136fcfba4_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzcw_15bbfaf5-1c56-4844-a5c5-d623a3eee635"
      unitRef="shares">4200000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzg0_5d57b4d3-de87-49b4-ad1a-07bcb16b5306"
      unitRef="shares">1400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc4OTg3_56b3594c-64ab-4746-a550-eba94fcbc020"
      unitRef="shares">1300000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxNzk3_d6f6a8c3-3e0a-4b19-b760-3396ceb2ac29"
      unitRef="shares">200000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxODEw_4b1833f1-b0cb-41bb-9340-fab009f80b2c"
      unitRef="shares">100000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxODIz_754891de-ddda-40c6-9f9b-f71fdda3f287"
      unitRef="shares">800000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxODM2_6427e377-4d0c-43b7-a0b6-d39095edcae8"
      unitRef="shares">600000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc1OTc0_05ecd307-cd24-4761-b8c9-b639bde286df">Stock option activity for the years ended December 31, 2021 and 2020, are as follows&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:428.25pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:214.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:67.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:7.00pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:67.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:61.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:45pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,000,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,327,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.62&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(111,298)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(556,497)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.92&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,660,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,448,959&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.88&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(777,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.02&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(50,000)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.52&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,281,875&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested or expected to vest at&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,775,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8yLTEtMS0xLTM1NDI0_46bab023-99d5-4695-aa04-191fd3f87d32"
      unitRef="shares">3000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8yLTMtMS0xLTM1NDI5_82621fcc-149e-4ddc-8804-1c2e22bc6e3c"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i72cc69890bcb47e9ab534cec595acbc4_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8yLTQtMS0xLTM1NDMy_ac6de6db-e020-4008-a405-e9250121a31f"
      unitRef="usdPerShare">0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8zLTEtMS0xLTM1NDI2_4b58e8e3-f4e8-4e48-af88-e37a6f3047c9"
      unitRef="shares">1327795</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8zLTMtMS0xLTM1NDI5_71ee77cf-2bde-4266-8db6-0a3606e496b5"
      unitRef="usdPerShare">1.12</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8zLTQtMS0xLTM1NDMy_c80d614c-906f-4043-a782-0f7421792592"
      unitRef="usdPerShare">0.62</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV80LTEtMS0xLTM1NDI2_76ca6aec-cc1e-4b85-aa46-15a0f080f4cc"
      unitRef="shares">111298</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV80LTMtMS0xLTM1NDI5_e8b3e236-e144-428f-9e0f-392b23d1be28"
      unitRef="usdPerShare">0.92</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV80LTQtMS0xLTM1NDMy_4c8add6c-b810-4148-8191-9b3a0b3960d0"
      unitRef="usdPerShare">0.51</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV81LTEtMS0xLTM1NDI2_184c78d3-19f0-4963-9ea9-2389539002ab"
      unitRef="shares">556497</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV81LTMtMS0xLTM1NDI5_6bbe5fee-45a9-4a4c-a882-761e6f3d9d3d"
      unitRef="usdPerShare">0.92</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV81LTQtMS0xLTM1NDMy_08749b36-ccef-4ad1-a19c-1dcec042476c"
      unitRef="usdPerShare">0.51</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV85LTEtMS0xLTM1MjAz_bae135d7-875c-4d9f-ae0a-7e10eb7370c3"
      unitRef="shares">3660000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV85LTMtMS0xLTM1MjAz_8c101536-7298-4a88-a97d-62fb89a10be2"
      unitRef="usdPerShare"
      xsi:nil="true"/>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV85LTQtMS0xLTM1NDMy_64d3209e-af07-48e3-86ba-2a8c6e9a2d09"
      unitRef="usdPerShare"
      xsi:nil="true"/>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMC0xLTEtMS0zNTIwMw_18f5376c-3b64-46b4-9390-abfbd850f2d1"
      unitRef="shares">1448959</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMC0zLTEtMS0zNTIwMw_8639cb76-e06f-4fb9-9d0e-59c3e9cf4aa8"
      unitRef="usdPerShare">1.07</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMC00LTEtMS0zNTQzMg_4998672a-bbb1-4eb4-9431-4e014b3d72bb"
      unitRef="usdPerShare">0.88</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMS0xLTEtMS0zNTIwMw_d28d6cee-14b2-48ec-b995-867d7c014677"
      unitRef="shares">0</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMS0zLTEtMS0zNTIwMw_35409488-1f81-4b53-81e8-2aabbe228ba1"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisedInPeriodWeightedAverageGrantDateFairValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMS00LTEtMS0zNTQzMg_25b846f6-993e-48aa-bee5-defcc2b5ef94"
      unitRef="usdPerShare">0</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMi0xLTEtMS0zNTIwMw_2e0d3273-faf3-48b2-94aa-ae2c458c4b6f"
      unitRef="shares">777084</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMi0zLTEtMS0zNTIwMw_f7d9902c-c7b1-4e8e-b5b0-890fcb3331a3"
      unitRef="usdPerShare">1.02</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedWeightedAverageGrantDateFairValue>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedInPeriodWeightedAverageGrantDateFairValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMi00LTEtMS0zNTQzMg_2aca3a39-3941-4bf7-9812-ea02d8b1ef74"
      unitRef="usdPerShare">0.52</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedInPeriodWeightedAverageGrantDateFairValue>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOptionsExpiredNumberOfShares
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMy0xLTEtMS0zNTIwMw_37799213-1065-4d73-9f1e-0153bb6f38a3"
      unitRef="shares">50000</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOptionsExpiredNumberOfShares>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOptionsExpiredWeightedAverageGrantDateFairValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMy0zLTEtMS0zNTIwMw_bbdd04aa-c897-465f-bc47-503837572fcb"
      unitRef="usdPerShare">0.52</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsNonVestedOptionsExpiredWeightedAverageGrantDateFairValue>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpiredInPeriodWeightedAverageGrantDateFairValue
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xMy00LTEtMS0zNzI4Ng_dc67cf0e-476b-4e00-bf6d-c0f10e1efcc2"
      unitRef="usdPerShare">0.52</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpiredInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xNS0xLTEtMS0zNTIwMw_0ee69d73-fae3-4ddf-ade0-3743f5ab9407"
      unitRef="shares">4281875</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6Mzc4ZjM0NDU2YTc1NDRlNDkwNjU2MGEzZTljMmNkZmEvdGFibGVyYW5nZTozNzhmMzQ0NTZhNzU0NGU0OTA2NTYwYTNlOWMyY2RmYV8xNy0xLTEtMS0zNTIwMw_fc0fd635-5b82-4bf1-9067-7b2c558da8d9"
      unitRef="shares">3775148</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc1OTc1_1300fe2e-52db-4d09-9488-dc28349cdfbd">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table sets forth significant assumptions used in the Monte Carlo model for market-based options to determine the fair value of the option&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;s at the date of grant:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:411.00pt"&gt;&lt;tr&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:207.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:94.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:6.25pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td style="width:94.75pt"/&gt;&lt;td style="width:1.0pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:26pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year Ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year Ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:24pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Market-Based Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Market-Based Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility of common stock&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;90.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected life of options in years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="ic3a0e39995ba441393d637037ad5d36e_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl8yLTEtMS0xLTM1MjAz_cac01fff-4f6f-416d-a9e9-45b7d68a36bb"
      unitRef="number">0.0161</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i367ee582f7d04dbea85cdc8f5e8ff2e4_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl8yLTMtMS0xLTM1MjAz_703b9a97-4e2e-48c7-a4a8-affeb9897dbf"
      unitRef="number">0.0012</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="ic3a0e39995ba441393d637037ad5d36e_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl8zLTEtMS0xLTM1MjAz_f8a93a88-1076-4a72-875c-d2524ac8f913"
      unitRef="number">0.9000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i367ee582f7d04dbea85cdc8f5e8ff2e4_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl8zLTMtMS0xLTM1MjAz_f4eda0a9-d47d-49e9-a4c6-9a183420d4fd"
      unitRef="number">1.0350</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="ic3a0e39995ba441393d637037ad5d36e_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl80LTEtMS0xLTM1MjAz_e3a5bdb5-7962-420c-8708-f2ec0a308679">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i367ee582f7d04dbea85cdc8f5e8ff2e4_D20200101-20201231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl80LTMtMS0xLTM1MjAz_cb2a267e-f650-4a47-9b81-801c9ea5ab82">P2Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="ic3a0e39995ba441393d637037ad5d36e_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl82LTEtMS0xLTM1MjAz_4455e06d-3404-438c-9f4f-0c8543f67d57"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i367ee582f7d04dbea85cdc8f5e8ff2e4_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZjNhMWJmYmQ1NDViNDNlNGJmODEwOTAyNzg5MjQ4OGIvdGFibGVyYW5nZTpmM2ExYmZiZDU0NWI0M2U0YmY4MTA5MDI3ODkyNDg4Yl82LTMtMS0xLTM1MjAz_57f0bfda-c948-40a7-a1c5-101e8e06d42e"
      unitRef="number">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxODQ5_ad6056ec-8daf-419b-a653-4991a37ec617"
      unitRef="usd">3300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i178ac6e8be274a2bb74032490d32bac2_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY185ODk1NjA0NjUyNjg5_75de559c-fdc4-42a6-a4a2-9e06b3ab278a">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc1OTc3_b1d82080-bef6-448d-a1d6-fd75c2246759">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock share activity for the years ended December 31, 2021 and 2020, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.468%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.764%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restricted Stock Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&#160;Fair&lt;br/&gt;Value&#160;at&#160;Date&#160;of&lt;br/&gt;Grant&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,629,020&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.66&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,114,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.83&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(711,988)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,236,910)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.65&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,795,100&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.00&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,702,289&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.73&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,453,854)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,275,172)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.36&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-vested at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,768,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ieb8d36a0a76d48458beae99911bc3cea_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8xLTItMS0xLTM1NDUz_9fa9c634-dc8e-46fc-a97e-1d55a93602e2"
      unitRef="shares">1629020</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ieb8d36a0a76d48458beae99911bc3cea_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8xLTQtMS0xLTM1NDU1_cf3a0a8d-ec95-475b-bb66-db6293e178a8"
      unitRef="usdPerShare">2.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8yLTItMS0xLTM1NDUz_98c2ed0d-d32a-4f9c-a3d0-0f3b07ffac18"
      unitRef="shares">3114978</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8yLTQtMS0xLTM1NDU1_3d9cd697-51d7-40c8-ab0a-98cdac7d2f0a"
      unitRef="usdPerShare">0.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8zLTItMS0xLTM1NDUz_06b0ccbc-cea2-4d64-b7d9-bfd38380e350"
      unitRef="shares">711988</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8zLTQtMS0xLTM1NDU1_0922ae09-6178-430e-85a3-0e09db422242"
      unitRef="usdPerShare">2.94</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl80LTItMS0xLTM1NDUz_3b352c9b-48c2-4a24-8ad2-cf9e442823a7"
      unitRef="shares">1236910</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl80LTQtMS0xLTM1NDU1_296071c8-731d-4b24-aec9-a443bd3849a0"
      unitRef="usdPerShare">1.65</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i9d30c19743e24a0598ce550630f64c96_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl81LTItMS0xLTM1MjAz_30cc94b8-e0a5-464b-b63c-cb15d3f4f24a"
      unitRef="shares">2795100</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i9d30c19743e24a0598ce550630f64c96_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl81LTQtMS0xLTM1MjAz_517c8f62-3f15-4246-b921-331fab36a565"
      unitRef="usdPerShare">1.00</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl82LTItMS0xLTM1MjAz_7a72dd2c-e995-4369-abda-dd5a63156e52"
      unitRef="shares">1702289</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl82LTQtMS0xLTM1MjAz_e98b97b7-e584-46df-a8ba-0569553dde40"
      unitRef="usdPerShare">1.73</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl85LTItMS0xLTM1MjAz_d277dad3-d7c3-4765-bc36-8d1a923a42e9"
      unitRef="shares">1453854</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl85LTQtMS0xLTM1MjAz_57ef9250-c8ff-4083-8bec-21850a25bab0"
      unitRef="usdPerShare">1.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8xMC0yLTEtMS0zNTIwMw_bacf1eaf-98d7-452a-b7aa-bba20981d88f"
      unitRef="shares">1275172</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8xMC00LTEtMS0zNTIwMw_9e5c5576-c103-4235-b7bc-94c86339f0dc"
      unitRef="usdPerShare">1.36</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i6f4f7bef78524b92b910cd58271fbd95_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8xMS0yLTEtMS0zNTIwMw_b94dafb7-2a4a-4e97-8598-ea14f06f3811"
      unitRef="shares">1768363</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i6f4f7bef78524b92b910cd58271fbd95_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6M2Y3YjZhODhmZjg0NDNmMTk3ZDViOWMwOTNkMTExOTYvdGFibGVyYW5nZTozZjdiNmE4OGZmODQ0M2YxOTdkNWI5YzA5M2QxMTE5Nl8xMS00LTEtMS0zNTIwMw_0796f2f8-0498-4a1a-9c9d-07e97ed092ef"
      unitRef="usdPerShare">1.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMTM1_a76945fb-e3b1-47a7-a34f-e70505f36cbb"
      unitRef="usd">2500000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue
      contextRef="ib3a7e5a0f63f49aeb7b0d89638996b2a_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMTQ5_73248d51-eeb7-4e10-98f1-b25c912c4392"
      unitRef="usd">2100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="i6f4f7bef78524b92b910cd58271fbd95_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMTYz_7144f21b-5e85-4ef2-8dc7-c6922d8a6e5f"
      unitRef="usd">1900000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i8f87fcd40f594fa29079691dad56f6c5_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY183Njk2NTgxNDAxODg3_af590aa6-9a18-42ba-aa70-2f729af77f19">P1Y9M18D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ia4b486ec7f0d48309d6dd4be4054a2f2_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMTgy_b8554a63-ec6d-4012-bd97-3bba39da37fe"
      unitRef="shares">900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc4OTk5_aa7ff80b-c065-4ea4-aca6-9221f1c90076"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc1OTc4_048ab446-d1e5-40f9-a80e-7143998a2c2d">&lt;div style="margin-bottom:9pt;margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Restricted stock units activity for the years ended December 31, 2021 and 2020, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.002%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.468%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.533%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.764%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restricted Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&#160;Fair&lt;br/&gt;Value&#160;at&#160;Date&#160;of&lt;br/&gt;Grant&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RSUs at January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,038,474&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020 granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;922,786&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.19&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2020 forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(733,711)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RSUs at January 1, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,227,549&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021 granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2021 forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(184,173)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;RSUs at December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,043,376&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.07&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i8b945e8437d64df9b5a60d05c5b0c41a_I20191231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xLTItMS0xLTM1NDU3_ba9f5837-3ba9-4683-b5f2-9c8983c417e3"
      unitRef="shares">1038474</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i8b945e8437d64df9b5a60d05c5b0c41a_I20191231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xLTQtMS0xLTM1NDU5_0c4c8b2f-f7fa-4abe-b76e-d1a0f948c2d3"
      unitRef="usdPerShare">3.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ia4b486ec7f0d48309d6dd4be4054a2f2_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8zLTItMS0xLTM1NDU3_bb48d2d1-baf9-4791-b190-82333efd04ed"
      unitRef="shares">922786</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ia4b486ec7f0d48309d6dd4be4054a2f2_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8zLTQtMS0xLTM1NDU5_c7c041cf-d73a-41c0-b6d7-15334f884a73"
      unitRef="usdPerShare">1.19</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ia4b486ec7f0d48309d6dd4be4054a2f2_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl80LTItMS0xLTM1NDU3_30590c27-660e-44a8-a8cc-4d80484971dd"
      unitRef="shares">733711</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ia4b486ec7f0d48309d6dd4be4054a2f2_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl80LTQtMS0xLTM1NDU5_1a310856-8703-49a6-998d-eba667431054"
      unitRef="usdPerShare">3.79</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ib9eb784639ba42aa9bd1d8a9edf50a2a_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl81LTItMS0xLTM1MjAz_bceeb0ac-729b-49e2-9ed4-772b2b2d3e53"
      unitRef="shares">1227549</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ib9eb784639ba42aa9bd1d8a9edf50a2a_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl81LTQtMS0xLTM1MjAz_dc2b5fba-5bdd-4a46-9a54-ee9fe6f7e3fc"
      unitRef="usdPerShare">1.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xMS0yLTEtMS0zNTIwMw_9bc3fe82-acaa-4fbf-a406-f0b5e44f820e"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xMS00LTEtMS0zNTIwMw_9e965cdb-8dc9-4800-8f1b-af28f0d897b5"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xMy0yLTEtMS0zNTIwMw_bc6af8af-ed01-47f9-b3dc-54655fc380dd"
      unitRef="shares">184173</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xMy00LTEtMS0zNTIwMw_1320c48c-c607-4e41-b095-bd7840faaedf"
      unitRef="usdPerShare">2.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i60e7c638740a46cabead2aa51ebca0a8_I20211231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xNC0yLTEtMS0zNTIwMw_6b5ce223-163a-4589-98e8-58c43c234d04"
      unitRef="shares">1043376</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i60e7c638740a46cabead2aa51ebca0a8_I20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGFibGU6ZmU0NTZhYTRjOWUwNGI4MWFhNDA5MjdjOGI2OWY5ODYvdGFibGVyYW5nZTpmZTQ1NmFhNGM5ZTA0YjgxYWE0MDkyN2M4YjY5Zjk4Nl8xNC00LTEtMS0zNTIwMw_fdc61410-42e2-4b96-b11d-80adec2e7b17"
      unitRef="usdPerShare">1.07</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="i60e7c638740a46cabead2aa51ebca0a8_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMTk1_884a99d9-f265-4daf-9258-76052457a127"
      unitRef="usd">1000000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="ic8a81756050a45299b55ec3b1e5fa7be_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjA4_24e9354b-f2f2-427c-8ca6-3120df822a0e">P2Y1M6D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="i69c7ef7e8ec44db3a80b159ce5cf7fbe_I20121231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjM3_28b3c239-2d52-4572-826e-aaa5bb92c6cd"
      unitRef="shares">500000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="ia1908e4cecc44353bf0f898fc7a8c2f8_D20120101-20121231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjIz_4f9acf2d-d99b-4928-a2ad-99ea53f3e99a"
      unitRef="number">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOfferingPeriod
      contextRef="ia1908e4cecc44353bf0f898fc7a8c2f8_D20120101-20121231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yMTk5MDIzMjY0MjEy_2c48b040-daf1-40d6-8b2d-3bbc3c365bff">P3M</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardOfferingPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate
      contextRef="i69c7ef7e8ec44db3a80b159ce5cf7fbe_I20121231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18yNzQ4Nzc5MDc4NTE5_83db3686-1006-4dae-9f2f-beed989c5c6f"
      unitRef="number">0.10</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeePurchasePowerDuringOfferingPeriod
      contextRef="ia1908e4cecc44353bf0f898fc7a8c2f8_D20120101-20121231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjYw_45d63e94-b0fa-4d66-857c-a4846b55b664"
      unitRef="shares">1000</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeePurchasePowerDuringOfferingPeriod>
    <ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeePurchasePowerEachYearValue
      contextRef="ia1908e4cecc44353bf0f898fc7a8c2f8_D20120101-20121231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjY3_f53463f1-b0d2-41ab-80b8-5034bb604ae2"
      unitRef="usd">25000</ftk:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeePurchasePowerEachYearValue>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i35d8f3b733c64c73ab4abcb9d158f08d_D20210101-20211231"
      decimals="-4"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjc2_709219ef-e43d-4024-a0f0-d25c703f0828"
      unitRef="usd">20000.00</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="iaf6475ed4ea94caca87659362adabacf_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjgz_82536d49-4804-4b31-b208-9d815eb7d36c"
      unitRef="usd">100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <ftk:EmployeeStockPurchasePlanESPPSharesPurchasedTotalFairValue
      contextRef="i35d8f3b733c64c73ab4abcb9d158f08d_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMjk3_3ed0016a-2b2f-43f2-8f94-98201d22898a"
      unitRef="usd">200000</ftk:EmployeeStockPurchasePlanESPPSharesPurchasedTotalFairValue>
    <ftk:EmployeeStockPurchasePlanESPPSharesPurchasedTotalFairValue
      contextRef="iaf6475ed4ea94caca87659362adabacf_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzEx_4a1d7e51-51c3-4a3e-a72e-6beefa03a6e4"
      unitRef="usd">100000</ftk:EmployeeStockPurchasePlanESPPSharesPurchasedTotalFairValue>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzI1_5a624923-e065-41f9-b9b0-a272d7543fa5"
      unitRef="usd">3800000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzM5_16da3a5f-13ca-4d40-a6cb-1455a0aafc8c"
      unitRef="usd">3000000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="iade1f432957c4a9a97933efdf47f68b2_D20150101-20150101"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzUz_05c1ae7c-9784-4c7b-b198-7eafb170b1dc"
      unitRef="number">1</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="iade1f432957c4a9a97933efdf47f68b2_D20150101-20150101"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzU5_522b4e11-bde0-4b8a-919b-d9db1e7f3597"
      unitRef="number">0.02</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzc2_6d3994cc-6ed1-42b8-98f0-afb54c8a0fb3"
      unitRef="usd">200000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNzkxL2ZyYWc6ODAzNmEwOTcxOWY2NDk5Y2I4MDNiNzFkYTIxMGUzMWMvdGV4dHJlZ2lvbjo4MDM2YTA5NzE5ZjY0OTljYjgwM2I3MWRhMjEwZTMxY18zMjk4NTM0ODkyMzkw_f7d48de0-7ada-4c2b-bac9-f31c477da5b4"
      unitRef="usd">200000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84Mi9mcmFnOmFmZmMxOGY5MjkyNTQ3NzBiOTQyMzQ0M2VhODA2MGExL3RleHRyZWdpb246YWZmYzE4ZjkyOTI1NDc3MGI5NDIzNDQzZWE4MDYwYTFfODI2_a25d8d46-84a6-4620-9608-9dddbf3c775a">Earnings (Loss) Per Share &lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic earnings (loss) per common share is calculated by dividing net income (loss) by the weighted average number of common shares outstanding for the period. Diluted earnings (loss) per common share is calculated by dividing net income (loss) by the weighted average number of common shares outstanding combined with dilutive common share equivalents outstanding, if the effect is dilutive. Potentially dilutive common share equivalents consist of incremental shares of common stock issuable upon exercise of stock options and settlement of restricted stock units.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Potentially dilutive securities were excluded from the calculation of diluted loss per share for the years ended December&#160;31, 2021 and 2020, since including them would have an anti-dilutive effect on loss per share due to the net loss incurred during the periods.  Securities convertible into shares of common stock that were not considered in the diluted loss per share calculations were 1.0&#160;million restricted stock units and 4.3&#160;million stock options for the year ended December 31, 2021, and 1.8&#160;million restricted stock units and 3.8&#160;million stock options for the year ended December 31, 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84Mi9mcmFnOmFmZmMxOGY5MjkyNTQ3NzBiOTQyMzQ0M2VhODA2MGExL3RleHRyZWdpb246YWZmYzE4ZjkyOTI1NDc3MGI5NDIzNDQzZWE4MDYwYTFfODI3_3fc64184-8c88-4d4b-8aec-781a6af1b82c">Basic earnings (loss) per common share is calculated by dividing net income (loss) by the weighted average number of common shares outstanding for the period. Diluted earnings (loss) per common share is calculated by dividing net income (loss) by the weighted average number of common shares outstanding combined with dilutive common share equivalents outstanding, if the effect is dilutive. Potentially dilutive common share equivalents consist of incremental shares of common stock issuable upon exercise of stock options and settlement of restricted stock units.</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ib8cdae8426424ff8961c6804d5680eba_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84Mi9mcmFnOmFmZmMxOGY5MjkyNTQ3NzBiOTQyMzQ0M2VhODA2MGExL3RleHRyZWdpb246YWZmYzE4ZjkyOTI1NDc3MGI5NDIzNDQzZWE4MDYwYTFfMjU4Mzg1MjMyNTU0MjE_51d70a19-57ba-468c-8800-497896b284db"
      unitRef="shares">1000000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i9ad5cd3a20d94e82a30da6dc3e9d9de4_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84Mi9mcmFnOmFmZmMxOGY5MjkyNTQ3NzBiOTQyMzQ0M2VhODA2MGExL3RleHRyZWdpb246YWZmYzE4ZjkyOTI1NDc3MGI5NDIzNDQzZWE4MDYwYTFfMjU4Mzg1MjMyNTU0MzQ_c73d6c1d-6910-4909-b4a9-b621946ed4b3"
      unitRef="shares">4300000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ica3f0bc84f81428b8b7136cc34209071_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84Mi9mcmFnOmFmZmMxOGY5MjkyNTQ3NzBiOTQyMzQ0M2VhODA2MGExL3RleHRyZWdpb246YWZmYzE4ZjkyOTI1NDc3MGI5NDIzNDQzZWE4MDYwYTFfMjU4Mzg1MjMyNTU0NDc_6133f65d-ef4a-4fbb-8335-c82934f62153"
      unitRef="shares">1800000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ib22c58da06fc46ad9424067eafae5583_D20200101-20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84Mi9mcmFnOmFmZmMxOGY5MjkyNTQ3NzBiOTQyMzQ0M2VhODA2MGExL3RleHRyZWdpb246YWZmYzE4ZjkyOTI1NDc3MGI5NDIzNDQzZWE4MDYwYTFfMjU4Mzg1MjMyNTU0NjA_fb0bcbf7-7168-47e7-97f5-54066c04f77c"
      unitRef="shares">3800000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:CashFlowSupplementalDisclosuresTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RleHRyZWdpb246YWFhNTFmZjVjZmI5NDMwZThlZDBmY2U2ZDdjYzA2MTZfOTQ0_d979e46f-1142-4d5f-99d8-9bad23ed8c9d">Supplemental Cash Flow Information&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Supplemental cash payment information:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income taxes received&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(351)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,246)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Supplemental non-cash investing and financing activities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equity issued - acquisition of JP3&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashFlowSupplementalDisclosuresTextBlock>
    <us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RleHRyZWdpb246YWFhNTFmZjVjZmI5NDMwZThlZDBmY2U2ZDdjYzA2MTZfOTUw_85f6af18-be8d-4c8a-a657-5b032525528d">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:72.730%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.621%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Supplemental cash payment information:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Income taxes received&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(351)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,246)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Supplemental non-cash investing and financing activities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equity issued - acquisition of JP3&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,538&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock>
    <us-gaap:InterestPaidNet
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RhYmxlOjVlNzdjY2ZjNGI4MzQ4ZmQ5MjY1ZTNhMzNkNmRmMGYwL3RhYmxlcmFuZ2U6NWU3N2NjZmM0YjgzNDhmZDkyNjVlM2EzM2Q2ZGYwZjBfMTAtMS0xLTEtMzI0ODg_09fc3ff1-3a2f-49f9-b921-89e70cea354d"
      unitRef="usd">26000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RhYmxlOjVlNzdjY2ZjNGI4MzQ4ZmQ5MjY1ZTNhMzNkNmRmMGYwL3RhYmxlcmFuZ2U6NWU3N2NjZmM0YjgzNDhmZDkyNjVlM2EzM2Q2ZGYwZjBfMTAtMy0xLTEtMzI0ODg_98970e47-0c53-4624-8203-2f44fdf81c42"
      unitRef="usd">25000</us-gaap:InterestPaidNet>
    <us-gaap:ProceedsFromIncomeTaxRefunds
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RhYmxlOjVlNzdjY2ZjNGI4MzQ4ZmQ5MjY1ZTNhMzNkNmRmMGYwL3RhYmxlcmFuZ2U6NWU3N2NjZmM0YjgzNDhmZDkyNjVlM2EzM2Q2ZGYwZjBfMTEtMS0xLTEtMzI0ODg_93acf4f5-0528-463e-9322-6a99399cbf21"
      unitRef="usd">351000</us-gaap:ProceedsFromIncomeTaxRefunds>
    <us-gaap:ProceedsFromIncomeTaxRefunds
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RhYmxlOjVlNzdjY2ZjNGI4MzQ4ZmQ5MjY1ZTNhMzNkNmRmMGYwL3RhYmxlcmFuZ2U6NWU3N2NjZmM0YjgzNDhmZDkyNjVlM2EzM2Q2ZGYwZjBfMTEtMy0xLTEtMzI0ODg_35c11816-f43f-47d1-9a04-76c44ab83f83"
      unitRef="usd">6246000</us-gaap:ProceedsFromIncomeTaxRefunds>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RhYmxlOjVlNzdjY2ZjNGI4MzQ4ZmQ5MjY1ZTNhMzNkNmRmMGYwL3RhYmxlcmFuZ2U6NWU3N2NjZmM0YjgzNDhmZDkyNjVlM2EzM2Q2ZGYwZjBfMTgtMS0xLTEtMzI0ODg_976b6fb6-c064-47ff-bf40-ff16fae3d564"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:StockIssuedDuringPeriodValueAcquisitions
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF84OC9mcmFnOmFhYTUxZmY1Y2ZiOTQzMGU4ZWQwZmNlNmQ3Y2MwNjE2L3RhYmxlOjVlNzdjY2ZjNGI4MzQ4ZmQ5MjY1ZTNhMzNkNmRmMGYwL3RhYmxlcmFuZ2U6NWU3N2NjZmM0YjgzNDhmZDkyNjVlM2EzM2Q2ZGYwZjBfMTgtMy0xLTEtMzI0ODg_ecd75cb0-cdf9-4471-b402-83b081abfbbf"
      unitRef="usd">8538000</us-gaap:StockIssuedDuringPeriodValueAcquisitions>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMjY1OQ_b6ceb002-5ce0-44ff-9c85-fad0a0dc636a">Related Party Transaction&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2017, the Internal Revenue Service (&#x201c;IRS&#x201d;) notified the Company that it was examining the Company&#x2019;s federal tax returns for the year ended December 31, 2014. As a result of this examination, the IRS informed the Company on May 1, 2019, that certain employment taxes related to the compensation of our former CEO, Mr. Chisholm, were not properly withheld in 2014 and proposed an adjustment. Mr. Chisholm&#x2019;s affiliated companies through which he provided his services have agreed to indemnify the Company for any such taxes, and Mr. Chisholm executed a personal guaranty in favor of the Company, supporting this indemnification. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In October 2019, an amendment to the employment agreement of Mr. Chisholm was executed, giving the Company the contractual right of offset for any amounts owed by Mr. Chisholm to the Company for the IRS matter, and giving the Company &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;the right to withhold payments to Mr. Chisholm equal to amounts reasonably estimated to potentially become due to the Company by the affiliated companies for the IRS matter from any amounts owed under the employment agreement. At December 31, 2019, the Company netted the related party receivable against the severance payable and recorded $1.8&#160;million for potential liability to the IRS. On January 5, 2020, Mr. Chisholm ceased to be an employee of the Company. In September 2020, the Company informed Mr. Chisholm it would cease payment of future severance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During first quarter of 2020, an additional accrual was recorded for $0.2 million related to potential penalties and interest on the IRS obligation. As of December 31, 2021 and 2020, the receivable from Mr. Chisholm was $1.4 million, &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;which equaled the payable to the IRS and netted with Mr. Chisholm&#x2019;s severance liability.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Both the IRS and severance liabilities are recorded in accrued liabilities on the consolidated balance sheet.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Mr. Ted D. Brown has been a Director of the Company since November of 2013 and has been the President and CEO of Confluence Resources LP (&#x201c;Confluence&#x201d;), a private oil and gas exploration and production company formed in 2016.  For the year ended December 31, 2021, the Company&#x2019;s revenues for chemical sales to Confluence was $3.6&#160;million.  As of December 31, 2021, Confluence owed $1.3&#160;million to the Company which is recorded in account receivables on the consolidated balance sheet. There were no transactions with Confluence in the year ended December 31, 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:DueFromRelatedPartiesCurrent
      contextRef="i206a061c98c0467ea4f05fc25145dd0f_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMTE4Mw_f6906249-f900-4279-bdce-c91efd61390f"
      unitRef="usd">1800000</us-gaap:DueFromRelatedPartiesCurrent>
    <us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued
      contextRef="i81a6d29c67e6465096b777e1505a6d3d_I20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMTQ2Mg_c268c6b8-25a7-4f8b-8eff-d1eb33043dc9"
      unitRef="usd">200000</us-gaap:IncomeTaxExaminationPenaltiesAndInterestAccrued>
    <us-gaap:DueFromRelatedPartiesCurrent
      contextRef="idaab4d7053d644859b01f4af72544f01_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMTYxNw_650613ad-95ef-4c92-8be9-cc612431b36c"
      unitRef="usd">1400000</us-gaap:DueFromRelatedPartiesCurrent>
    <us-gaap:DueFromRelatedPartiesCurrent
      contextRef="if6f424fae6354066be1c649810bcd3a3_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMTYxNw_90cc355d-c25f-4bed-aeda-464b0289c7d4"
      unitRef="usd">1400000</us-gaap:DueFromRelatedPartiesCurrent>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i723d95f466c842aea13d07a093adff97_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMjUwNg_8a1f83c6-882d-419b-bbfa-beefe9cba1d0"
      unitRef="usd">3600000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:DueFromRelatedPartiesCurrent
      contextRef="i88310026d54d4744945094abdc3657de_I20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85MS9mcmFnOjIyYWFkZmYwOGNjNTQ3YmE5NmJhNTcwMzBlYzBhNjVlL3RleHRyZWdpb246MjJhYWRmZjA4Y2M1NDdiYTk2YmE1NzAzMGVjMGE2NWVfMjU1NQ_400d80da-761c-4894-9303-e5958d0ac196"
      unitRef="usd">1300000</us-gaap:DueFromRelatedPartiesCurrent>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RleHRyZWdpb246NjY3ODg4OWU4MWI0NGE2ZmEzNTI4Y2E1MTc3ZDQzMzFfNTI2MA_92e6448b-0c6b-43a1-9214-a4832a68ec77">Business Segment, Geographic and Major Customer Information&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Segment Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating segments are defined as components of an enterprise for which separate financial information is available that is regularly evaluated by the chief operating decision-maker in deciding how to allocate resources and assess performance. The operations of the Company are categorized into the following reportable segments: CT and DA.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Chemistry Technologies. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The CT segment includes green specialty chemistries, logistics and technology services, which enable its customers to pursue improved efficiencies and performance throughout the life cycle of their wells, helping customers improve their ESG and operational goals.&lt;/span&gt;&lt;span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; This segment also includes a portfolio of specialty chemical products to address the long term challenges of in the janitorial, sanitization, food services, and adjacent markets. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Customers of the CT segment include major integrated oil and gas companies, oilfield services companies, independent oil and gas companies, national and state-owned oil companies, and international supply chain management companies&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Data Analytics. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The DA segment, created in the second quarter of 2020 in conjunction with the acquisition of JP3 on May 18, 2020, includes the design, development, production, sale and support of equipment and services that create and provide valuable information on the composition and properties of energy customers&#x2019; hydrocarbon fluids. The company markets products and services that support in-line data analysis of hydrocarbon components and properties.  Customers of the DA segment span across the entire oil and gas market, from upstream production to midstream facilities to refineries and distribution networks. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company evaluates performance based upon a variety of criteria. The primary financial measure is segment operating income (loss). Various functions, including certain sales and marketing activities and general and administrative activities, are provided centrally by the corporate office. Costs associated with corporate office functions, other corporate income and expense items, and income taxes are not allocated to the reportable segment.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Summarized financial information of the reportable segments is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;                &lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:92.982%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:39.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.686%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.264%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.529%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.529%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.741%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:5pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.929%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As of and for the years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Chemistry Technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Data Analytics&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from external customers&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,339&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from related party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,641&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,641&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,466)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(12,168)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,822)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(31,456)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions to long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from external customers&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,831&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from related party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(88,486)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36,407)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(18,755)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(143,648)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,519&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions to long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,425&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,425&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;  (1) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;The Company formed the DA segment in the second quarter of 2020 upon acquiring JP3.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets of the Company by reportable segments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Chemistry Technologies&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Data Analytics&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,329&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,244&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Geographic Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue by country is based on the location where services are provided and products are sold. No individual countries other than the U.S. and the United Arab Emirates (&#x201c;UAE&#x201d;) accounted for more than 10% of revenue. Revenue by geographic location is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.736%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:48.166%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.848%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.931%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.702%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.848%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.705%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;UAE&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other countries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Long-lived assets held in countries other than the U.S. are not considered material to the consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Major Customers &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from major customers, as a percentage of consolidated revenue, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.352%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Chemistry Technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;% of Total Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Year ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,067&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer B&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:69.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.083%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year ended December 31, 2020 &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;B&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,394&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The majority of t&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;he Company&#x2019;s revenue is derived from its CT segment, which consists predominantly of customers within the oil and gas industry. Customers within the oil and gas industry include oilfield services companies, integrated oil and natural gas companies, independent oil and natural gas companies, and state-owned national oil companies.&#160;The concentration in the oil and gas industry increases credit and business risk&lt;/span&gt;.</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RleHRyZWdpb246NjY3ODg4OWU4MWI0NGE2ZmEzNTI4Y2E1MTc3ZDQzMzFfNTI4NQ_dabc9461-d38e-41a0-930c-e4f37afc9d64">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Segment Information&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Operating segments are defined as components of an enterprise for which separate financial information is available that is regularly evaluated by the chief operating decision-maker in deciding how to allocate resources and assess performance. The operations of the Company are categorized into the following reportable segments: CT and DA.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Chemistry Technologies. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The CT segment includes green specialty chemistries, logistics and technology services, which enable its customers to pursue improved efficiencies and performance throughout the life cycle of their wells, helping customers improve their ESG and operational goals.&lt;/span&gt;&lt;span style="color:#212529;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; This segment also includes a portfolio of specialty chemical products to address the long term challenges of in the janitorial, sanitization, food services, and adjacent markets. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; Customers of the CT segment include major integrated oil and gas companies, oilfield services companies, independent oil and gas companies, national and state-owned oil companies, and international supply chain management companies&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Data Analytics. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The DA segment, created in the second quarter of 2020 in conjunction with the acquisition of JP3 on May 18, 2020, includes the design, development, production, sale and support of equipment and services that create and provide valuable information on the composition and properties of energy customers&#x2019; hydrocarbon fluids. The company markets products and services that support in-line data analysis of hydrocarbon components and properties.  Customers of the DA segment span across the entire oil and gas market, from upstream production to midstream facilities to refineries and distribution networks. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company evaluates performance based upon a variety of criteria. The primary financial measure is segment operating income (loss). Various functions, including certain sales and marketing activities and general and administrative activities, are provided centrally by the corporate office. Costs associated with corporate office functions, other corporate income and expense items, and income taxes are not allocated to the reportable segment.&lt;/span&gt;&lt;/div&gt;</us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RleHRyZWdpb246NjY3ODg4OWU4MWI0NGE2ZmEzNTI4Y2E1MTc3ZDQzMzFfNTI3MQ_ec021559-d505-4b8c-8c40-a7f37c3b73ba">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Summarized financial information of the reportable segments is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;                &lt;/span&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:92.982%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:39.937%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.579%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.686%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.264%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.529%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.529%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.741%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr style="height:5pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:43.929%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.619%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.326%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.554%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;As of and for the years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Chemistry Technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Data Analytics&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:700;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline"&gt; (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from external customers&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;35,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,339&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,627&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from related party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,641&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,641&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,466)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(12,168)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13,822)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(31,456)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;939&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,011&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions to long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from external customers&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,831&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revenue from related party&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Loss from operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(88,486)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36,407)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(18,755)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(143,648)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Depreciation and amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,519&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;422&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;471&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,412&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Additions to long-lived assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,425&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,425&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:700;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;  (1) &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;The Company formed the DA segment in the second quarter of 2020 upon acquiring JP3.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Assets of the Company by reportable segments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.280%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.344%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.346%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Chemistry Technologies&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,346&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Data Analytics&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,329&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate and Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,528&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,663&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,244&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie80bf159bc5442648a40d8bc4dfa6e91_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMi0xLTEtMS0zMjQ4OA_b0ee07e3-10b2-4db5-bdcc-b9195cc5b61a"
      unitRef="usd">35288000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5fa96cdb7d454681a75ad31c27c331ca_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMi01LTEtMS0zMjQ4OA_1e034803-3907-44bb-a09a-e95daad1c4ef"
      unitRef="usd">4339000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i059d9313735445eda36522fa99a5116f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMi03LTEtMS0zMjQ4OA_4adb596e-d23b-4841-adac-f1f335fb8d95"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMi05LTEtMS0zMjQ4OA_94b64bb8-e95e-4765-9d97-c19c50b386ae"
      unitRef="usd">39627000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ie80bf159bc5442648a40d8bc4dfa6e91_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMy0xLTEtMS0zMjQ4OA_0da8419c-a204-45eb-841e-b9d46a0df014"
      unitRef="usd">3641000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i5fa96cdb7d454681a75ad31c27c331ca_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMy01LTEtMS0zMjQ4OA_0d5763a3-ef70-451b-95bb-dd1e3ffeaa9d"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i059d9313735445eda36522fa99a5116f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMy03LTEtMS0zMjQ4OA_9e439968-c339-4ad5-aee4-a1205260905a"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMy05LTEtMS0zMjQ4OA_93857998-ef40-471a-bfc0-e364605d8ce7"
      unitRef="usd">3641000</us-gaap:RevenueFromRelatedParties>
    <us-gaap:OperatingIncomeLoss
      contextRef="ie80bf159bc5442648a40d8bc4dfa6e91_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNC0xLTEtMS0zMjQ4OA_0f13a46b-01da-4af5-a0ac-1ee616437978"
      unitRef="usd">-5466000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i5fa96cdb7d454681a75ad31c27c331ca_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNC01LTEtMS0zMjQ4OA_23de1071-0c0d-43cd-bc0a-cd24c0586693"
      unitRef="usd">-12168000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i059d9313735445eda36522fa99a5116f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNC03LTEtMS0zMjQ4OA_fc1e1815-cef6-4d39-b2c1-06bd3f77ddc8"
      unitRef="usd">-13822000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNC05LTEtMS0zMjQ4OA_3dcf1bfe-cf4c-4060-b586-006918355fdc"
      unitRef="usd">-31456000</us-gaap:OperatingIncomeLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="ie80bf159bc5442648a40d8bc4dfa6e91_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNS0xLTEtMS0zMjQ4OA_989e00bb-dfab-4443-a2be-7c44558d74dc"
      unitRef="usd">939000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i5fa96cdb7d454681a75ad31c27c331ca_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNS01LTEtMS0zMjQ4OA_2786b29d-0191-493a-b21a-bde79a58533c"
      unitRef="usd">70000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i059d9313735445eda36522fa99a5116f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNS03LTEtMS0zMjQ4OA_05c7788e-5daf-4603-bcb8-4a11211a396a"
      unitRef="usd">2000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNS05LTEtMS0zMjQ4OA_aa8268fa-9884-48e3-a2cd-42c09774599a"
      unitRef="usd">1011000</us-gaap:DepreciationAndAmortization>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ie80bf159bc5442648a40d8bc4dfa6e91_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNi0xLTEtMS0zMjQ4OA_64356dcf-2fcb-4a21-98ca-dab75be79aa4"
      unitRef="usd">39000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i5fa96cdb7d454681a75ad31c27c331ca_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNi01LTEtMS0zMjQ4OA_52003f67-4ba9-4f54-8f51-752e69a67f0c"
      unitRef="usd">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i059d9313735445eda36522fa99a5116f_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNi03LTEtMS0zMjQ4OA_e499d4c5-7b1e-4ec3-8c3b-bbab4fb49d99"
      unitRef="usd">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfNi05LTEtMS0zMjQ4OA_8ffece08-fb64-480e-b29d-5cc259424cc9"
      unitRef="usd">39000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i3a43ef6317a34f51ab0c88c4fd4f5146_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfOS0xLTEtMS0zMjQ4OA_21646c83-62b8-4f29-a826-69d8bbb6ea8e"
      unitRef="usd">50310000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i76a2ce0fffb24d219b865d6ebe93beb1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfOS01LTEtMS0zMjQ4OA_fdfb1db4-43cd-4dbb-8f21-aab3a205eb5a"
      unitRef="usd">2831000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ic258cd1d800440109b9a45d4b8cb29f5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfOS03LTEtMS0zMjQ4OA_6c913e82-fad1-4131-9056-e3f6a560d964"
      unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfOS05LTEtMS0zMjQ4OA_a9b9e69a-a6b7-4619-916e-8118c918a9a3"
      unitRef="usd">53141000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i3a43ef6317a34f51ab0c88c4fd4f5146_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTAtMS0xLTEtMzI0ODg_6be2d656-86f5-40cd-b64f-af5f31975978"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i76a2ce0fffb24d219b865d6ebe93beb1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTAtNS0xLTEtMzI0ODg_b7f969ab-ada0-4ce6-8575-0bbe00f99bc1"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="ic258cd1d800440109b9a45d4b8cb29f5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTAtNy0xLTEtMzI0ODg_b51a95ed-85f4-474c-8411-7a220ec9ff68"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:RevenueFromRelatedParties
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTAtOS0xLTEtMzI0ODg_54aa5479-be80-4751-9d2a-3997f52bcf26"
      unitRef="usd">0</us-gaap:RevenueFromRelatedParties>
    <us-gaap:OperatingIncomeLoss
      contextRef="i3a43ef6317a34f51ab0c88c4fd4f5146_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTEtMS0xLTEtMzI0ODg_54057e3b-037a-4a81-be01-8ff5648a3b88"
      unitRef="usd">-88486000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i76a2ce0fffb24d219b865d6ebe93beb1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTEtNS0xLTEtMzI0ODg_5f1fe80f-6d97-43da-b9f8-cae20ef89554"
      unitRef="usd">-36407000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ic258cd1d800440109b9a45d4b8cb29f5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTEtNy0xLTEtMzI0ODg_42142c61-8ca8-488d-805e-ccf59f4862de"
      unitRef="usd">-18755000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTEtOS0xLTEtMzI0ODg_7f8a4baf-9625-4158-909b-b19e7e96aaaa"
      unitRef="usd">-143648000</us-gaap:OperatingIncomeLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="i3a43ef6317a34f51ab0c88c4fd4f5146_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTItMS0xLTEtMzI0ODg_1d071db3-948c-43f0-b766-9b74014e2500"
      unitRef="usd">2519000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i76a2ce0fffb24d219b865d6ebe93beb1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTItNS0xLTEtMzI0ODg_958b90fd-9f91-42bf-96fc-f9b602d2499d"
      unitRef="usd">422000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="ic258cd1d800440109b9a45d4b8cb29f5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTItNy0xLTEtMzI0ODg_016a3b8e-cf07-49e3-8144-d2e6bbaef511"
      unitRef="usd">471000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTItOS0xLTEtMzI0ODg_197a11e1-58d4-4b31-b5dc-bb4be6bb5ed6"
      unitRef="usd">3412000</us-gaap:DepreciationAndAmortization>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i3a43ef6317a34f51ab0c88c4fd4f5146_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTMtMS0xLTEtMzI0ODg_dac8f435-9732-412a-ba7b-8af2d0cf8d6f"
      unitRef="usd">1425000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i76a2ce0fffb24d219b865d6ebe93beb1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTMtNS0xLTEtMzI0ODg_6ecaa108-08f5-48aa-98c9-30057028bfd0"
      unitRef="usd">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ic258cd1d800440109b9a45d4b8cb29f5_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTMtNy0xLTEtMzI0ODg_bc12ce5c-3bfb-423c-bcda-0ae2bcb7c42b"
      unitRef="usd">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjk4MGM1ZDg1YTRhNDRkNjQ5OWUyMjE1Y2IzYzljMWRjL3RhYmxlcmFuZ2U6OTgwYzVkODVhNGE0NGQ2NDk5ZTIyMTVjYjNjOWMxZGNfMTMtOS0xLTEtMzI0ODg_5ff11e7d-a26b-4d11-95b3-d8991aad5949"
      unitRef="usd">1425000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:Assets
      contextRef="i94ccd6fe68444878b5c16e5ade3cab83_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfMS0xLTEtMS0zMjQ4OA_59240bfd-cafb-4a67-8b67-043be9677279"
      unitRef="usd">34387000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id8089155f27f419c8806b36be5a736a8_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfMS0zLTEtMS0zMjQ4OA_70bdf769-d9b7-4363-971b-4999dad12343"
      unitRef="usd">43346000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i3ae7c87f4c99469c8ee7f9c4ca1aec3d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfMi0xLTEtMS0zMjQ4OA_3888c790-f34b-4369-84ef-49068732a803"
      unitRef="usd">7329000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i75153af6920c4faa93dc00f129283be4_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfMi0zLTEtMS0zMjQ4OA_cb5d68db-f65f-44a3-8d53-e9d90ce4758a"
      unitRef="usd">13201000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ibeb608634a834e6190a6f72be56cf050_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfMy0xLTEtMS0zMjQ4OA_6b286c7e-d65b-4abf-94f9-7c3a34d28824"
      unitRef="usd">8528000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="if747ddd5d52b4851a0d701409394e2cb_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfMy0zLTEtMS0zMjQ4OA_2b643b4e-71c8-4b1d-b7c2-2e23c76a2dff"
      unitRef="usd">29663000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i16e34471193f479da34277f8de5df833_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfNC0xLTEtMS0zMjQ4OA_aca27ab9-8608-4ad9-987d-2739ba8d65cf"
      unitRef="usd">50244000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="id9ecf08b7084404eb856468a05796365_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjVjZWYxODAxNTNkMzRiOTY5Y2VlNTYxZWNiNDc5YTdjL3RhYmxlcmFuZ2U6NWNlZjE4MDE1M2QzNGI5NjljZWU1NjFlY2I0NzlhN2NfNC0zLTEtMS0zMjQ4OA_d54df19d-219d-4161-85b0-524a26dbd900"
      unitRef="usd">86210000</us-gaap:Assets>
    <us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RleHRyZWdpb246NjY3ODg4OWU4MWI0NGE2ZmEzNTI4Y2E1MTc3ZDQzMzFfNTI3NQ_a62d24a1-a940-4dc1-81e8-96565fc4123d">Revenue by geographic location is as follows (in thousands):&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.736%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:48.166%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.848%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:3.931%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.702%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.848%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.705%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Years ended December 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;U.S.&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,187&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;UAE&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other countries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,569&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,746&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,268&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,141&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock>
    <us-gaap:Revenues
      contextRef="i9edbbdb108c342abb7e938e5c39c9fca_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfMi01LTEtMS0zMjQ4OA_8d05025d-9809-4184-9071-d607cc8b5bef"
      unitRef="usd">33187000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i36fe2cdc4dc34588904bb61c865884d1_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfMi03LTEtMS0zMjQ4OA_e34384af-9047-4805-b1bd-afbfb8aaf8b7"
      unitRef="usd">40632000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="iacdf431bfe0b44cebbf1f2acb642b34a_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfMy01LTEtMS0zMjQ4OA_3b3ca96f-fdf6-4d84-a759-dbd21ae76ddf"
      unitRef="usd">4512000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ief58ebe72e9a41fd98328d582c08f526_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfMy03LTEtMS0zMjQ4OA_ef7283ac-1d01-4f1c-8cbe-8f7643578ee8"
      unitRef="usd">6763000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i9e51bc516acf4c679c438214e3dca387_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfNC01LTEtMS0zMjQ4OA_447d10bd-c0be-46f9-a3d5-8492d22c9878"
      unitRef="usd">5569000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i4a35508c632e4b338f5be9bfe7542f1e_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfNC03LTEtMS0zMjQ4OA_d81c5706-f60b-4787-be11-d470bc230694"
      unitRef="usd">5746000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfNS01LTEtMS0zMjQ4OA_17325963-5904-4f1f-a42a-55b9b4a7280c"
      unitRef="usd">43268000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i1affcc7e0a0044649a91bdf977eab087_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjhiNzYxODkwOTM5YjQwMjY5MTVkOTBiNTAzZTcxNTJlL3RhYmxlcmFuZ2U6OGI3NjE4OTA5MzliNDAyNjkxNWQ5MGI1MDNlNzE1MmVfNS03LTEtMS0zMjQ4OA_3b743e81-ae2a-4f2d-ace3-6a4c6c14c915"
      unitRef="usd">53141000</us-gaap:Revenues>
    <us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RleHRyZWdpb246NjY3ODg4OWU4MWI0NGE2ZmEzNTI4Y2E1MTc3ZDQzMzFfNTI3Mg_2e63501c-0a09-47e7-97ff-58c6983ada91">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Revenue from major customers, as a percentage of consolidated revenue, is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:70.245%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.352%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Chemistry Technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;% of Total Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Year ended December 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,067&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer B&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11,632&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:69.514%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.823%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.350%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:13.083%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Year ended December 31, 2020 &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer A&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,891&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-indent:9pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;B&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,394&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i52881f81e6f44908af46c96084de6561_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjQyNzA0ZDMxNTIxNzQ5OWM5Y2EzYTdhZWU4Mjc0YzM5L3RhYmxlcmFuZ2U6NDI3MDRkMzE1MjE3NDk5YzljYTNhN2FlZTgyNzRjMzlfMi0yLTEtMS0zMjQ4OA_5292a0a1-9921-4216-b287-3cda0ab49b43"
      unitRef="usd">4067000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i52881f81e6f44908af46c96084de6561_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjQyNzA0ZDMxNTIxNzQ5OWM5Y2EzYTdhZWU4Mjc0YzM5L3RhYmxlcmFuZ2U6NDI3MDRkMzE1MjE3NDk5YzljYTNhN2FlZTgyNzRjMzlfMi00LTEtMS0zMjQ4OA_cedc7c21-a9bb-41bd-a89f-16cf9d0dd85d"
      unitRef="number">0.09</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i4ba8d3d0555b42069cf7c83e1130390c_D20210101-20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjQyNzA0ZDMxNTIxNzQ5OWM5Y2EzYTdhZWU4Mjc0YzM5L3RhYmxlcmFuZ2U6NDI3MDRkMzE1MjE3NDk5YzljYTNhN2FlZTgyNzRjMzlfMy0yLTEtMS0zMjQ4OA_fb73bdd6-d915-41d4-b9b0-fe3c96c655b1"
      unitRef="usd">11632000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4ba8d3d0555b42069cf7c83e1130390c_D20210101-20211231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOjQyNzA0ZDMxNTIxNzQ5OWM5Y2EzYTdhZWU4Mjc0YzM5L3RhYmxlcmFuZ2U6NDI3MDRkMzE1MjE3NDk5YzljYTNhN2FlZTgyNzRjMzlfMy00LTEtMS0zMjQ4OA_784f1fb0-561e-4e3b-a1e6-29e17cedc9af"
      unitRef="number">0.26</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie87ae43d178e45db9608a8d560174ce3_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOmFmYWRlYjUyODZjMTRjZDg4NDJkNmUwZWUyY2QxNDVjL3RhYmxlcmFuZ2U6YWZhZGViNTI4NmMxNGNkODg0MmQ2ZTBlZTJjZDE0NWNfMS0yLTEtMS0zMjQ4OA_92522e37-0147-44ab-857e-dd4f33c06310"
      unitRef="usd">12891000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie87ae43d178e45db9608a8d560174ce3_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOmFmYWRlYjUyODZjMTRjZDg4NDJkNmUwZWUyY2QxNDVjL3RhYmxlcmFuZ2U6YWZhZGViNTI4NmMxNGNkODg0MmQ2ZTBlZTJjZDE0NWNfMS00LTEtMS0zMjQ4OA_987e5656-c40d-460d-9db7-60c6193795e8"
      unitRef="number">0.24</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ie3ba2d8aa26e4895823f945ae210e90f_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOmFmYWRlYjUyODZjMTRjZDg4NDJkNmUwZWUyY2QxNDVjL3RhYmxlcmFuZ2U6YWZhZGViNTI4NmMxNGNkODg0MmQ2ZTBlZTJjZDE0NWNfMy0yLTEtMS0zMjQ4OA_a4958da3-58f7-4f99-b31d-cf8f83c07f17"
      unitRef="usd">9394000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie3ba2d8aa26e4895823f945ae210e90f_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF85NC9mcmFnOjY2Nzg4ODllODFiNDRhNmZhMzUyOGNhNTE3N2Q0MzMxL3RhYmxlOmFmYWRlYjUyODZjMTRjZDg4NDJkNmUwZWUyY2QxNDVjL3RhYmxlcmFuZ2U6YWZhZGViNTI4NmMxNGNkODg0MmQ2ZTBlZTJjZDE0NWNfMy00LTEtMS0zMjQ4OA_89a8e921-53cc-4c9b-a1fa-6d245db8073d"
      unitRef="number">0.18</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzk5OA_e317d33d-489d-4c04-91f9-30b6de55d1bc">Subsequent Events &lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have evaluated the effects of events that have occurred subsequent to December 31, 2021, and there have been no material events that would require recognition in the 2021 consolidated financial statements or disclosure in the notes to the consolidated financial statements, except as disclosed below. &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 2, 2022, Flotek entered into a Private Investment in Public Equity (PIPE) transaction with a consortium of investors to secure growth capital for the Company.  Pursuant to the PIPE transaction on February 2, 2022, Flotek issued $21.2&#160;million aggregate initial principal amount of convertible notes for net cash proceeds of approximately $19&#160;million.  The investors are ProFrac Holdings, LLC, Burlington Ventures Ltd., entities associated with North Sound Management, certain funds associated with one of Flotek's directors including the D3 Family Fund and the D3 Bulldog Fund, and Firestorm Capital LLC.   The convertible notes accrue paid-in-kind interest at a rate of 10% per annum, have a maturity of one year, and are converted into common stock of Flotek (a) at the holder's option at any time prior to maturity, at a price of $1.088125 per share, (b) at Flotek's option, if the volume-weighted average trading price of Flotek's common stock equals or exceeds $2.50 for 20 trading days during a 30 consecutive trading day period, or (c) at maturity, at a price of $0.8705.  The issuance of the additional shares may trigger a change in ownership defined as 50% or more under IRC Section 382 that will limit the amount of net operating losses deductible and tax credits allowable starting in 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Also on February 2, 2022, the Company entered into a long-term supply agreement with ProFrac Services, LLC (the &#x201c;ProFrac Agreement&#x201d;), a subsidiary of Profrac Holdings LLC, in exchange for $10&#160;million of convertible notes under the same terms as the convertible notes issued in the PIPE transaction.  Under the ProFrac Agreement, ProFrac Services, LLC is obligated to order chemicals from the Company at least equal to the greater of (a) the chemicals required for 33% of their hydraulic fracturing fleets and (b) a baseline measured by the first ten hydraulic fracturing fleets deployed by ProFrac Services, LLC.  Profrac shall pay to the company, as liquidated damages an amount equal to twenty-five percent (25%) of the difference between (i) the aggregate Purchase Price of the quantity of Products comprising the Minimum Purchase Obligation during such calendar year. The term of the ProFrac Agreement is three years starting April 1, 2022. In connection with the Profrac Agreement, the Company also granted Profrac Holdings LLC. the right to designate two members to serve on Flotek&#x2019;s board of directors.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On February 16, 2022, the Company entered into an amended agreement with ProFrac Holdings, LLC to expand the Profrac Agreement to a term of ten years and up to thirty hydraulic fracturing fleets deployed by ProFrac Services, LLC.  Closing of the transaction is expected to occur in the second quarter of 2022 and is subject to a vote of the shareholders of Flotek&#x2019;s common stock, as well as other customary conditions.   As part of the transaction, at closing of the amended agreement Flotek would (a) issue to ProFrac notes convertible into Flotek&#x2019;s common stock with a maturity of one year, with the amount of notes based on the size of expansion, and (b) grant ProFrac the right to appoint two members to Flotek&#x2019;s board of directors, for a total of four out of seven directors. Conversion price of the convertible notes will be  $1.088125 per share under certain conditions prior to maturity, or $0.8705 per share at maturity. The convertible notes contain other terms and conditions similar to the convertible notes issued to Profrac on February 2, 2022.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of these transactions, the Company will seek shareholder approval to increase the authorized shares of common stock or perform a reverse split to allow for the conversion of these convertible notes.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On December 31, 2021, the Company entered into a contract to sell the Waller manufacturing facility for proceeds of $4.2&#160;million net of brokerage fee, which is expected to close in April 2022.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="ida27b6c7cc934bf8a3546021fe7b8601_I20220202"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUxMjM_c096f376-f4b0-4699-95c6-b36aef9f4185"
      unitRef="usd">21200000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:ProceedsFromConvertibleDebt
      contextRef="ib9f84f24bac749dcbe74216d6bbae233_D20220202-20220202"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUxNTE_796f7116-9a30-42c6-a6bb-a70e452b36f8"
      unitRef="usd">19000000</us-gaap:ProceedsFromConvertibleDebt>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ida27b6c7cc934bf8a3546021fe7b8601_I20220202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUxNjk_593d180e-3928-4efc-ae45-f5ef26e2deea"
      unitRef="number">0.10</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="ida27b6c7cc934bf8a3546021fe7b8601_I20220202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUxODU_7c423514-d865-442c-85ed-2717cb1c819e"
      unitRef="usdPerShare">1.088125</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:DebtInstrumentConvertibleStockPriceTrigger
      contextRef="ib9f84f24bac749dcbe74216d6bbae233_D20220202-20220202"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUyMjE_9b0673f5-e380-4fe3-8aa8-c7e24fb08475"
      unitRef="usdPerShare">2.50</us-gaap:DebtInstrumentConvertibleStockPriceTrigger>
    <us-gaap:DebtInstrumentConvertibleThresholdTradingDays
      contextRef="ib9f84f24bac749dcbe74216d6bbae233_D20220202-20220202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUyMzI_ed58789a-58e0-4484-8709-b41fba852791"
      unitRef="d">20</us-gaap:DebtInstrumentConvertibleThresholdTradingDays>
    <us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1
      contextRef="ib9f84f24bac749dcbe74216d6bbae233_D20220202-20220202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUyNDg_f2fe4dba-3a9c-4df3-a20d-e10152e400b9"
      unitRef="d">30</us-gaap:DebtInstrumentConvertibleThresholdConsecutiveTradingDays1>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ibe0b55301e4f40ac8a16be9fa5079f53_I20220202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzUyMDU_ea62b95a-d7a5-4d34-9856-8689e688235a"
      unitRef="usdPerShare">0.8705</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:DebtConversionConvertedInstrumentAmount1
      contextRef="i6fb9eec07e364b65aab872b93a8825bb_D20220202-20220202"
      decimals="-6"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzI3NDg3NzkwODMzNzQ_7580f0af-65f2-4002-870b-00f0f95c7b6f"
      unitRef="usd">10000000</us-gaap:DebtConversionConvertedInstrumentAmount1>
    <ftk:AssetPurchaseCommitmentPercentageOfFleet
      contextRef="i7bdce430a3984185b32005357627aeb2_I20220202"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNjk1Mjc_d58e9eb0-8d68-4d34-b163-9a650ffc2b96"
      unitRef="number">0.33</ftk:AssetPurchaseCommitmentPercentageOfFleet>
    <ftk:ConditionalRevenueShortfallRateIFChemicalRequirementRateIsUnmet
      contextRef="i7bdce430a3984185b32005357627aeb2_I20220202"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzM4NDgyOTA3MjEwMjU_84f45926-224c-455e-8e7d-9d47c6a7678f"
      unitRef="number">0.25</ftk:ConditionalRevenueShortfallRateIFChemicalRequirementRateIsUnmet>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i430bf94ffaa64339ba2128b52babcc80_I20220216"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzI3NDg3NzkwNzc3NzY_e7bdce22-5132-409e-b8b1-3b7d6b583afa"
      unitRef="usdPerShare">1.088125</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <ftk:DebtInstrumentConvertibleConversionPriceAtMaturity
      contextRef="i430bf94ffaa64339ba2128b52babcc80_I20220216"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzI3NDg3NzkwNzc4MjY_4ec42b96-c727-4300-8510-0952a056258f"
      unitRef="usdPerShare">0.8705</ftk:DebtInstrumentConvertibleConversionPriceAtMaturity>
    <us-gaap:ProceedsFromSaleOfPropertyHeldForSale
      contextRef="i5b0a289e44c64fd3a5e3edecf5fa9c61_D20210101-20211231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xMDMvZnJhZzo1NDFkYWM3MTBlM2Q0NzVmODFkZWFkYTFkZTcwMTI5MC90ZXh0cmVnaW9uOjU0MWRhYzcxMGUzZDQ3NWY4MWRlYWRhMWRlNzAxMjkwXzIxOTkwMjMyNzY5ODg_2828998f-e87e-49a5-a2ef-bca914079890"
      unitRef="usd">4200000</us-gaap:ProceedsFromSaleOfPropertyHeldForSale>
    <dei:AuditorFirmId
      contextRef="if3c3c828e1114582a91e1b181f202b6b_D20210101-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8xNjA3L2ZyYWc6YTQ3ZDMxNTk5Y2Q2NGMxMGIzY2QyZWRmMjViYzFkODQvdGV4dHJlZ2lvbjphNDdkMzE1OTljZDY0YzEwYjNjZDJlZGYyNWJjMWQ4NF8yMTk5MDIzMjU1OTYz_821dd050-3d6f-455e-9568-f7032acb90bd">185</dei:AuditorFirmId>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtMS0xLTEtMzI0ODg_270f5f50-b4b9-48cd-9526-7efa4f8e13f7"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtMS0xLTEtMzI0ODg_270f5f50-b4b9-48cd-9526-7efa4f8e13f7"
          xlink:type="locator"/>
        <link:footnote id="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RleHRyZWdpb246ODIwNzUwODFmMTE2NDIzYTg5ZGRlYzAwZmQzZGE3YTlfMjc0ODc3OTA3MDMzMg_883d66ef-a02f-47f4-817f-f0a7618fbb00" xlink:label="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RleHRyZWdpb246ODIwNzUwODFmMTE2NDIzYTg5ZGRlYzAwZmQzZGE3YTlfMjc0ODc3OTA3MDMzMg_883d66ef-a02f-47f4-817f-f0a7618fbb00" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">See Note 16, &#x201c;Stockholders&#x2019; Equity&#x201d; for further discussion.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RhYmxlOjdmNjA2MThjYjM0YjQ4ZGZiNjUyZDg0NTg1YjBlYzU5L3RhYmxlcmFuZ2U6N2Y2MDYxOGNiMzRiNDhkZmI2NTJkODQ1ODViMGVjNTlfNDMtMS0xLTEtMzI0ODg_270f5f50-b4b9-48cd-9526-7efa4f8e13f7"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOjNkMzNjMTM0Nzc4MDQ3NGY5Y2JiZTA3ZmQ5ODdlNTIwL3NlYzozZDMzYzEzNDc3ODA0NzRmOWNiYmUwN2ZkOTg3ZTUyMF8zMS9mcmFnOjgyMDc1MDgxZjExNjQyM2E4OWRkZWMwMGZkM2RhN2E5L3RleHRyZWdpb246ODIwNzUwODFmMTE2NDIzYTg5ZGRlYzAwZmQzZGE3YTlfMjc0ODc3OTA3MDMzMg_883d66ef-a02f-47f4-817f-f0a7618fbb00"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
