<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2022"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:tls="http://telos.com/20230331"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  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="tls-20230331.xsd" xlink:type="simple"/>
    <context id="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i8fffa0630f104fb999b40d84f3b4f6e1_I20230505">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2023-05-05</instant>
        </period>
    </context>
    <context id="i261d9f75f170479f85bc09c988bb281f_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="ibdf331b459c143d9b4049b77652e1eb4_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i983a7e147f83460a8496e0fe77764cd7_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i5e11257fd5e44f0f843f6abcf726cb92_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="if6a47d7ffb46493fa8519d3af5398a03_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i193ef6c50abe42ceb127b924c685ea9b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ie0c630acc7bb4b059a993be362c712fe_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="ic44de1c9eb104db29a7ab0578bae1835_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i7beaa91fe8d74fe1a2bd981f25d2efd5_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id1aa243c74ce44db8193dc6e78271fd9_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i33627c0ef89c46089aed7e465bb4f1be_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ic621744b7c504defb1067ea49befaa0c_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i06aade73685d4459ad87a1141f59aeed_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i78288467278b447c9f8ec6b205bd3093_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i2f20f994facd4d578fd8fa123a395f35_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i1d6f74ee58234fa0b9037a4e53ae5089_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i0a8324a1481843ad9174c9ecdb9c7db4_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i5d6f83abd1d44367b4bdbd16560f3c26_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i677e17bf93124a84a28565bdbfc05322_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i2758ad98902548fc882c5363281908c3_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="if809649949df4ec2bcbee1f0dc63d0e4_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</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="ia20e62a3ef9e4511a4c6fce652cf8cae_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</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="i611711fd54364fad99c7bb5672f91889_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</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="i2c39828f31a84b5ab1709a19e94cbb9d_I20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</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="i9deb3ad18d614905b0fde8210fe69268_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i6e60250574034cbc9d6ead34c610db4e_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i4eeeb476b81141ceac4c7554369b448f_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ia0ecc96f06b64dd898a0bb13afd29b85_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ia0ef6632ccf94a5093fc7c9c0bc69dff_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="ie63ef0b1f8c648e987327e9ecba8597b_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i2596b61e8d76422db8fe8aea46799d2f_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="ice8321a8df8a48e59b906290ead40f35_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i70a64dc6699d4001a4761004399ee407_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tls:TelosIdMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i1384d47d660644b9b2a712eb84c7a85d_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i9c73bba0ceda4db897611a60561d16fb_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="if717deaca179446abbd902bdf115e444_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i720871c2bd5d40c0b0ba438037cad07a_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:OtherRestructuringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ie159b33e1dd44ffaa46984467578b1da_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:OtherRestructuringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i8ca685af3fcb40758f76074b05da2515_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:EmployeeSeveranceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="iebdcd72e211c4c639503d2acfa17704a_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:OtherRestructuringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ifca0b0f581ee49e1a7357bacc31497aa_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">tls:RevenueTimingOfTransferOfGoodsOrServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="ibe697fcaa3974a88af62a9b6e2464f08_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">tls:RevenueTimingOfTransferOfGoodsOrServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredOverTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i1f97f1859ec2491ba1212df5851f3cff_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">tls:RevenueTimingOfTransferOfGoodsOrServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i236a1e77abc54270b20a2f9b3d06de91_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">tls:RevenueTimingOfTransferOfGoodsOrServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TimingOfTransferOfGoodOrServiceAxis">us-gaap:TransferredAtPointInTimeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i2b45755bd1174610ad18f63ab70679ab_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:FederalGovernmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i894ac2be57a94485beb08a6ab8a0f872_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:FederalGovernmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i81cbb57cf4684950b0de0faafa4766cf_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:FederalGovernmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="iccdb33f9c9e241dd9504e8921c2e0d4d_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:StateLocalAndCommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i83be100bc8194350bebf10e32af055f4_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:StateLocalAndCommercialMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i0d703b07fc884cf99fe6844c27e44e01_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i2f2433e9ddf44f13b4a2a92cb61dfc35_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i45b96b4fc27c408297570f1af27ca8b1_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i076bcf486ab245818f9bbdfe3ef616a6_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:FixedPriceContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i00a55dc7a8af42a6963f343525fee42b_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i2e1db02a4fe34c82ab9c347b69cd335c_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">us-gaap:TimeAndMaterialsContractMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i351a79dee4e344ff8363a9cfe752e5fc_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">tls:CostPlusFixedFeeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i647dd0efbc2044e9bf6d7915af25bd65_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ContractWithCustomerBasisOfPricingAxis">tls:CostPlusFixedFeeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ia8b0e18e3b074989bddbf21fae29f1ee_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:USDepartmentOfDefenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i9e3d602c0b894039aa476410489a9115_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:USDepartmentOfDefenseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="icb9266a69285408e91477d2499a036b7_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:CivilianMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="ibdd7697ffc374901ac8d3fc6a7f266dd_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:CivilianMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i0d4f624444d645d7997bf7c837749b69_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2023-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i1414e26fd59646979c27619d0de00f12_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2024-01-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i741f7c613c4140488d72d5fc40550ff3_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">tls:FederalGovernmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="id80f6cae1c6741efb8d1d19ebbc269d1_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tls:FurnitureAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i6a09eca591884af28329740283132ba8_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">tls:FurnitureAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i27fdbc1582434a9ebb9d543987b28b7c_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ic7cefa3ef7f3464c9cdd9d689ad67f6d_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i74a91f06db6e4c9989a38bf9c4c5e5ad_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecuritySolutionsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ideb494925c0a41ac927d4546c63c9c65_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecuritySolutionsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ifdb3b7aeed554d19b3dcdc27797812ad_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecureNetworksSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i73441995244c4a48944e8eaa5f9b63b9_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecureNetworksSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i64c52c461f3446718fed3eb81aec3301_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i5bad6a7e251e4d2680fab61a75533eaf_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ia30001a9335a4c44a0702dacfb768074_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i07d960d49d954228828c43a95cfddbcc_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i4e2d2cdfb5654faba9b1992bae2a0a3f_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="id35c9701965d46b9973f99496dd9e29b_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib5e7d9af3aeb458293056d049509d530_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i31ca871623044e738df24128d1ec9684_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i4df4b223016743a0bb7cecf009ea1745_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i140b99a27e1a4d7daf832bec98ff988e_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i5165c2970533434e9ff16e0facbf9478_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i6c02372d68074b6ebda693d27201c0d1_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IndefiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="id986812ce4f943dea5d3e579c5406ac0_D20220101-20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-12-31</endDate>
        </period>
    </context>
    <context id="i3eac0eb298d34e7bb1d220dbb3ecbad6_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i2c2969309ba44cabb7f57ee33a359643_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i7840752e96324a56a0885c025fac3313_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tls:AcquiredTechnologyAndCustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i11b58c786ea74c4297560643278bcd60_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">tls:AcquiredTechnologyAndCustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ib87e8229440246b28743eef745a81a79_I20221230">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tls:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-30</instant>
        </period>
    </context>
    <context id="i7f9ae7b98d654f6cae438f279a45d206_I20221230">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tls:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:LineOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-30</instant>
        </period>
    </context>
    <context id="ib078f7a4de7649a4b130d50faada6014_D20221230-20221230">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tls:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tls:AlternativeBaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-30</startDate>
            <endDate>2022-12-30</endDate>
        </period>
    </context>
    <context id="i65a3dd9ea8fd42299c9f2cdacc850132_D20221230-20221230">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tls:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tls:AdjustedDailySimpleSecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-30</startDate>
            <endDate>2022-12-30</endDate>
        </period>
    </context>
    <context id="i8f5f5c5685654defb15b7d48f0e86919_D20221230-20221230">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tls:CreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tls:AdjustedTermSecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-12-30</startDate>
            <endDate>2022-12-30</endDate>
        </period>
    </context>
    <context id="ied24386bcc604a6e93bc2bcee62f13e7_I20221230">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2022-12-30</instant>
        </period>
    </context>
    <context id="ib2593c047fe64f83a2f9edb82f0e9f07_I20230412">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-12</instant>
        </period>
    </context>
    <context id="i28f7edb3e79b44a5abfbcf7ea524470a_I20221130">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupDisposedOfBySaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tls:SoftwareLicensesUnderDeliveryOrderMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-11-30</instant>
        </period>
    </context>
    <context id="i0638c413e8144102928332ccf09dbc41_D20220801-20220831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupDisposedOfBySaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tls:SoftwareLicensesUnderDeliveryOrderMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-08-01</startDate>
            <endDate>2022-08-31</endDate>
        </period>
    </context>
    <context id="iad2517b5ef2a4b27a45ac3f4252d49eb_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DisposalGroupDisposedOfBySaleNotDiscontinuedOperationsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tls:SoftwareLicensesUnderDeliveryOrderMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i2ce9e27f66fa4db8b4659e50d2e6ee3f_D20210730-20210730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tls:AssetPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-07-30</startDate>
            <endDate>2021-07-30</endDate>
        </period>
    </context>
    <context id="icbd34c61f85d448da33b4f4ac2c8a3d2_I20210730">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tls:AssetPurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-07-30</instant>
        </period>
    </context>
    <context id="ie8c4d65eb7574446a0a8f3b383552967_I20230202">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">tls:DiamondFortressTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-02-02</instant>
        </period>
    </context>
    <context id="i6d883c2111304b06ad1d0e58ec5840b6_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tls:Two016OmnibusLongTermIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i5d4354c8e5cd4e4aa75801ffcf5410bf_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i38255714054a44589ea28e90a71e66a7_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i001c853cb7714af592f89c0905a10da8_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i67971e192a494a629d7f6151aa3b63de_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i95ffa7d7787e48e1b93673e665a3a62e_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="ia5fe26952ac44da8bbb6a7ab32b12ee5_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i69691d099fa649cbb02315fd607ac0fa_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i1c1726c7aa2f4d8687439416699e5c29_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ib5d449c1c26a497fa45a179059829845_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tls:ServiceBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i6ef9ef53f1ff44d1ac8083dc3f5850b3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="ib27c7b8516a3445c8db4abb3498ea8f5_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tls:ServiceBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i5d3f779c46494dcc80db9e00fbddbd33_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i738bc738d52947a4b39a9dc36558a071_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tls:ServiceBasedRSUAwardsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i7225f51e7ca24f7aac2439b6a156ae79_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ie434631b5ce54f1f9adad01ea4ad137f_D20211001-20211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-10-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="i24764e58b20d4a84a62782e3f4a5ed63_I20220524">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
        </entity>
        <period>
            <instant>2022-05-24</instant>
        </period>
    </context>
    <context id="i6a5738fbce604aa3a740211907dd5008_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ia36f2d3991984d3eb14781ef51a7f38f_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i798ac6ce8677424abf55b86fe0973df4_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="ia977579bb0c14e55930fb6f10bfd13f0_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="if14c24d55da147c1a5482af9ca910b4e_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="ia82d81b8d21743ba9692f116801f3255_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockCompensationPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ie8c0ba0745d04e23b48bdb01de41db55_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">tls:EmmettWoodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i7cc45858de334ce9993e7de6b11a9890_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">tls:EmmettWoodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i2dd4cfa0bba743f59b4d3aebd8a02d8d_I20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">tls:EmmettWoodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-03-31</instant>
        </period>
    </context>
    <context id="i6c001a9a10f147248ac65415c20b8dd3_I20221231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">tls:EmmettWoodMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="i087f7143e52848fb9de3444786cc41b4_D20230103-20230103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</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>2023-01-03</startDate>
            <endDate>2023-01-03</endDate>
        </period>
    </context>
    <context id="iba1efe63ef214a3bbcac463b1809c4b3_D20230103-20230103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-03</startDate>
            <endDate>2023-01-03</endDate>
        </period>
    </context>
    <context id="i73595fa8d68d445b9344ce24052894eb_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</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>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i76f50a14e846420aa025ead67a95190f_D20220201-20220201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-01</endDate>
        </period>
    </context>
    <context id="i360aa1b15e7a4afbb3b0631cdebd7799_D20220201-20220201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-01</endDate>
        </period>
    </context>
    <context id="i4f70e77b13c94587bd890847b735e5c2_D20220201-20220201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-01</endDate>
        </period>
    </context>
    <context id="ia15da71792b3435a806ed1ba9cafc9bc_D20220201-20220201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-01</endDate>
        </period>
    </context>
    <context id="i2f85c54b399c4b56ac9d36e33bd3d264_D20220201-20220201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">tls:ShareBasedPaymentArrangementTrancheFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-02-01</endDate>
        </period>
    </context>
    <context id="ic951ad90dda243748e85e502d707af8d_D20230103-20230103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-03</startDate>
            <endDate>2023-01-03</endDate>
        </period>
    </context>
    <context id="ib912dc6268a641ddb527f3d76b7b2dc8_D20230103-20230103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">srt:AffiliatedEntityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VestingAxis">us-gaap:ShareBasedCompensationAwardTrancheThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-03</startDate>
            <endDate>2023-01-03</endDate>
        </period>
    </context>
    <context id="iedf59a613a174fc7b3e2e54a7ca982da_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecuritySolutionsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i48cf27281b6849b9acf4cedc0305cf2c_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecuritySolutionsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i8676f26a17084ea0a42e2f6578e08052_D20230101-20230331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecureNetworksSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-03-31</endDate>
        </period>
    </context>
    <context id="i6afd422fe65d450e980f9fed6e529b34_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tls:SecureNetworksSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="icabbef1cdb284e37b5fe885b9f58dc43_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i98ac06d662e545b0aae21f2563969e1f_D20220101-20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-01-01</startDate>
            <endDate>2022-03-31</endDate>
        </period>
    </context>
    <context id="i86eed2ed0e494e46bfd6ebb95d6112f7_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i90d9c29285484666ab5d029778a54a43_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i45bc626987384ffa9d96a89b8a6298c4_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <context id="i26dcbf1720e84263a3135f5ebf6d5a19_I20220331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000320121</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-31</instant>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</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="extension_option">
        <measure>tls:extension_option</measure>
    </unit>
    <unit id="segment">
        <measure>tls:segment</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80L2ZyYWc6OTNiMWZjZThhNTNjNDVkZGE3NzEwMDhjYmUxNjc2ZGEvdGFibGU6N2Q3YWQwOTc5MGVmNDE1M2JlYTIyYzNlM2ExYzllMjUvdGFibGVyYW5nZTo3ZDdhZDA5NzkwZWY0MTUzYmVhMjJjM2UzYTFjOWUyNV8wLTEtMS0xLTE0Mjg0OA_5a57001a-dca2-49e5-881d-1585ec8fe4eb">0000320121</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80L2ZyYWc6OTNiMWZjZThhNTNjNDVkZGE3NzEwMDhjYmUxNjc2ZGEvdGFibGU6N2Q3YWQwOTc5MGVmNDE1M2JlYTIyYzNlM2ExYzllMjUvdGFibGVyYW5nZTo3ZDdhZDA5NzkwZWY0MTUzYmVhMjJjM2UzYTFjOWUyNV8xLTEtMS0xLTE0Mjg0OA_10dcbaea-de7c-4825-bec3-28768898167d">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:AmendmentFlag
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80L2ZyYWc6OTNiMWZjZThhNTNjNDVkZGE3NzEwMDhjYmUxNjc2ZGEvdGFibGU6N2Q3YWQwOTc5MGVmNDE1M2JlYTIyYzNlM2ExYzllMjUvdGFibGVyYW5nZTo3ZDdhZDA5NzkwZWY0MTUzYmVhMjJjM2UzYTFjOWUyNV8yLTEtMS0xLTE0Mjg0OA_0a0a2ae8-cba3-4b51-820b-ea6874c1035d">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80L2ZyYWc6OTNiMWZjZThhNTNjNDVkZGE3NzEwMDhjYmUxNjc2ZGEvdGFibGU6N2Q3YWQwOTc5MGVmNDE1M2JlYTIyYzNlM2ExYzllMjUvdGFibGVyYW5nZTo3ZDdhZDA5NzkwZWY0MTUzYmVhMjJjM2UzYTFjOWUyNV8zLTEtMS0xLTE0Mjg0OA_d747ab64-8cbe-40d9-be9a-e13d2fce97ae">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80L2ZyYWc6OTNiMWZjZThhNTNjNDVkZGE3NzEwMDhjYmUxNjc2ZGEvdGFibGU6N2Q3YWQwOTc5MGVmNDE1M2JlYTIyYzNlM2ExYzllMjUvdGFibGVyYW5nZTo3ZDdhZDA5NzkwZWY0MTUzYmVhMjJjM2UzYTFjOWUyNV80LTEtMS0xLTE0Mjg0OA_8feabed7-069c-40f1-a4b4-49816597644e">Q1</dei:DocumentFiscalPeriodFocus>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i0d4f624444d645d7997bf7c837749b69_I20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80MC9mcmFnOjMxYjVhZDU4ZjE0MzQzMjc5MjYwZGYyZGFjYWYzNGQ4L3RhYmxlOjA2ODMzZTBmMTgwYTQwYjlhOTU1NWZiMzYxMDBlMTQ3L3RhYmxlcmFuZ2U6MDY4MzNlMGYxODBhNDBiOWE5NTU1ZmIzNjEwMGUxNDdfMS0xLTEtMS0xNDI4NDg_bee705ba-6a8a-4d02-b08e-ab396208eec5">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="i1414e26fd59646979c27619d0de00f12_I20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80MC9mcmFnOjMxYjVhZDU4ZjE0MzQzMjc5MjYwZGYyZGFjYWYzNGQ4L3RhYmxlOjA2ODMzZTBmMTgwYTQwYjlhOTU1NWZiMzYxMDBlMTQ3L3RhYmxlcmFuZ2U6MDY4MzNlMGYxODBhNDBiOWE5NTU1ZmIzNjEwMGUxNDdfMi0xLTEtMS0xNDI4NDg_312b75b4-9c1d-41fa-bbf8-0cbd62ec688c">P1Y</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="i6d883c2111304b06ad1d0e58ec5840b6_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfMjc0ODc3OTA4NzQ0NA_691ff034-a9b9-4773-918f-88c314b238d7">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="ie434631b5ce54f1f9adad01ea4ad137f_D20211001-20211231"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83Ni9mcmFnOjY5OTc3Y2VlMTBhMTQ5ZWY5ZjkwMzM3ZGMyZTc0NDU0L3RhYmxlOmJhMmI5NTcyMDJlNDRlOTY4ZGMyZTM5MDAwNTg1NzU1L3RhYmxlcmFuZ2U6YmEyYjk1NzIwMmU0NGU5NjhkYzJlMzkwMDA1ODU3NTVfMi0xLTEtMS0xNDI4NDg_0305d40b-e2dd-4fea-8085-d024f9f758f0">P0Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i360aa1b15e7a4afbb3b0631cdebd7799_D20220201-20220201"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82Ny9mcmFnOmU4MmYwZTYyMzVjMDRmZDNhYTJmOWQ3NDc5OWQxMWQ4L3RhYmxlOjMwNjMwMDI1MTZiZDRlYjg5MzMyN2Q3ZTRkMmE2YjhlL3RhYmxlcmFuZ2U6MzA2MzAwMjUxNmJkNGViODkzMzI3ZDdlNGQyYTZiOGVfMC0xLTEtMS0xNDI4NDg_80a6bee1-c367-423c-946e-2ecf12f7cbb8"
      unitRef="number">0.25</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i4f70e77b13c94587bd890847b735e5c2_D20220201-20220201"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82Ny9mcmFnOmU4MmYwZTYyMzVjMDRmZDNhYTJmOWQ3NDc5OWQxMWQ4L3RhYmxlOjMwNjMwMDI1MTZiZDRlYjg5MzMyN2Q3ZTRkMmE2YjhlL3RhYmxlcmFuZ2U6MzA2MzAwMjUxNmJkNGViODkzMzI3ZDdlNGQyYTZiOGVfMC0xLTEtMS0xNDI4NDg_88d07001-dc5b-46da-babd-6dfb6f27457d"
      unitRef="number">0.25</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ia15da71792b3435a806ed1ba9cafc9bc_D20220201-20220201"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82Ny9mcmFnOmU4MmYwZTYyMzVjMDRmZDNhYTJmOWQ3NDc5OWQxMWQ4L3RhYmxlOjMwNjMwMDI1MTZiZDRlYjg5MzMyN2Q3ZTRkMmE2YjhlL3RhYmxlcmFuZ2U6MzA2MzAwMjUxNmJkNGViODkzMzI3ZDdlNGQyYTZiOGVfMC0xLTEtMS0xNDI4NDg_8f01af3f-9a1e-43ff-aa86-466284599fc7"
      unitRef="number">0.25</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="i2f85c54b399c4b56ac9d36e33bd3d264_D20220201-20220201"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82Ny9mcmFnOmU4MmYwZTYyMzVjMDRmZDNhYTJmOWQ3NDc5OWQxMWQ4L3RhYmxlOjMwNjMwMDI1MTZiZDRlYjg5MzMyN2Q3ZTRkMmE2YjhlL3RhYmxlcmFuZ2U6MzA2MzAwMjUxNmJkNGViODkzMzI3ZDdlNGQyYTZiOGVfMC0xLTEtMS0xNDI4NDg_ce884ea9-345f-485c-a140-f9c3f73e7062"
      unitRef="number">0.25</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ic951ad90dda243748e85e502d707af8d_D20230103-20230103"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82Ny9mcmFnOmU4MmYwZTYyMzVjMDRmZDNhYTJmOWQ3NDc5OWQxMWQ4L3RhYmxlOjMwNjMwMDI1MTZiZDRlYjg5MzMyN2Q3ZTRkMmE2YjhlL3RhYmxlcmFuZ2U6MzA2MzAwMjUxNmJkNGViODkzMzI3ZDdlNGQyYTZiOGVfMi0xLTEtMS0xNjIyMDU_25fe28d9-7f26-41d9-8e42-505c6085c400"
      unitRef="number">0.5</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="ib912dc6268a641ddb527f3d76b7b2dc8_D20230103-20230103"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82Ny9mcmFnOmU4MmYwZTYyMzVjMDRmZDNhYTJmOWQ3NDc5OWQxMWQ4L3RhYmxlOjMwNjMwMDI1MTZiZDRlYjg5MzMyN2Q3ZTRkMmE2YjhlL3RhYmxlcmFuZ2U6MzA2MzAwMjUxNmJkNGViODkzMzI3ZDdlNGQyYTZiOGVfMi0xLTEtMS0xNjIyMDU_397260eb-7ed3-4f78-ae96-84cf93d80ebc"
      unitRef="number">0.5</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <dei:DocumentType
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODA4_bdf926cb-2466-4510-bed0-7a3760c8b966">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6ZTQ2Mjk0NTA2ZjJiNDYwZWExZjdhZTBlMjU5NGJiNWUvdGFibGVyYW5nZTplNDYyOTQ1MDZmMmI0NjBlYTFmN2FlMGUyNTk0YmI1ZV8wLTAtMS0xLTE0Mjg0OA_d6e43baa-608a-4da7-a548-28c25c6dec55">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xMjY0NDM4MzcyMTUzMA_08616642-9476-4eef-b5d3-db8e12a9c1d2">2023-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6OWQ4NDE5ODViYzYyNDQ5N2E5YTA2YTgyY2ViYTczZWYvdGFibGVyYW5nZTo5ZDg0MTk4NWJjNjI0NDk3YTlhMDZhODJjZWJhNzNlZl8wLTAtMS0xLTE0Mjg0OA_9a5d1195-5b13-4104-a9ad-9e9bfea01ee1">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODA5_a5badef2-c110-477f-9ff0-caef70323d01">001-08443</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODEw_075590a4-251c-4fe3-a556-a5fcc5d72bf0">TELOS CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6MzgyMTY1MDlmMGNhNDg1Y2EzYzg3YWNkYWYzNTM2YzEvdGFibGVyYW5nZTozODIxNjUwOWYwY2E0ODVjYTNjODdhY2RhZjM1MzZjMV8wLTAtMS0xLTE0Mjg0OA_12fb353f-c078-4f7f-9352-e222a961f65b">MD</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6MzgyMTY1MDlmMGNhNDg1Y2EzYzg3YWNkYWYzNTM2YzEvdGFibGVyYW5nZTozODIxNjUwOWYwY2E0ODVjYTNjODdhY2RhZjM1MzZjMV8wLTItMS0xLTE0Mjg0OA_9cb1fc29-cd7d-43b1-b557-451e9334efcc">52-0880974</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6MzgyMTY1MDlmMGNhNDg1Y2EzYzg3YWNkYWYzNTM2YzEvdGFibGVyYW5nZTozODIxNjUwOWYwY2E0ODVjYTNjODdhY2RhZjM1MzZjMV8zLTAtMS0xLTE0Mjg0OC90ZXh0cmVnaW9uOjY1NTY0NDE3ZjRmNDQyYjhhYTQyMmJiMDcxNmYzNjhmXzQ_6c2a0c34-5d91-4ca3-a1c1-5eb0e1cf7eb6">19886 Ashburn Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6MzgyMTY1MDlmMGNhNDg1Y2EzYzg3YWNkYWYzNTM2YzEvdGFibGVyYW5nZTozODIxNjUwOWYwY2E0ODVjYTNjODdhY2RhZjM1MzZjMV8zLTAtMS0xLTE0Mjg0OC90ZXh0cmVnaW9uOjY1NTY0NDE3ZjRmNDQyYjhhYTQyMmJiMDcxNmYzNjhmXzg_be60b320-6093-477a-b07d-218059a76f71">Ashburn</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6MzgyMTY1MDlmMGNhNDg1Y2EzYzg3YWNkYWYzNTM2YzEvdGFibGVyYW5nZTozODIxNjUwOWYwY2E0ODVjYTNjODdhY2RhZjM1MzZjMV8zLTAtMS0xLTE0Mjg0OC90ZXh0cmVnaW9uOjY1NTY0NDE3ZjRmNDQyYjhhYTQyMmJiMDcxNmYzNjhmXzEy_0e0516d9-2f8c-43a0-90c7-af45c9cafd8c">VA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6MzgyMTY1MDlmMGNhNDg1Y2EzYzg3YWNkYWYzNTM2YzEvdGFibGVyYW5nZTozODIxNjUwOWYwY2E0ODVjYTNjODdhY2RhZjM1MzZjMV8zLTItMS0xLTE0Mjg0OA_f49c507b-8da4-40ce-8a8e-76114b885a4b">20147-2358</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODEx_f8eb2b0a-ab70-42c8-9c8c-959f8e38ff59">703</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODEy_fcf56789-339f-483d-9f40-64670e4c103f">724-3800</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6OTY5M2E4MTIzMzc2NGE4MGE1YWQzNjZlYzU1YjE4ZWYvdGFibGVyYW5nZTo5NjkzYTgxMjMzNzY0YTgwYTVhZDM2NmVjNTViMThlZl8xLTAtMS0xLTE0Mjg0OA_a7602629-4f01-4fda-aff6-f99f0e9ddaf0">Common stock, $0.001 par value per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6OTY5M2E4MTIzMzc2NGE4MGE1YWQzNjZlYzU1YjE4ZWYvdGFibGVyYW5nZTo5NjkzYTgxMjMzNzY0YTgwYTVhZDM2NmVjNTViMThlZl8xLTEtMS0xLTE0Mjg0OA_13f81b5b-27aa-47cc-9e00-bd9b2405c3fb">TLS</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6OTY5M2E4MTIzMzc2NGE4MGE1YWQzNjZlYzU1YjE4ZWYvdGFibGVyYW5nZTo5NjkzYTgxMjMzNzY0YTgwYTVhZDM2NmVjNTViMThlZl8xLTItMS0xLTE0Mjg0OA_53d34931-d78a-4778-ab2c-474408eeaad4">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODEz_72a4a228-ac58-4f1b-85e1-2b109ef09e0a">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODE0_bcf116f4-c8a4-4025-ac94-7df9d440b76a">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6ZjFlYzUyOTEwNmNjNDljNWI3NDBlMjc0ODA4YzYwMDIvdGFibGVyYW5nZTpmMWVjNTI5MTA2Y2M0OWM1Yjc0MGUyNzQ4MDhjNjAwMl8wLTMtMS0xLTE1NzgwOQ_658cc4fa-abf5-4de4-8076-69cc3a5eac15">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6ZjFlYzUyOTEwNmNjNDljNWI3NDBlMjc0ODA4YzYwMDIvdGFibGVyYW5nZTpmMWVjNTI5MTA2Y2M0OWM1Yjc0MGUyNzQ4MDhjNjAwMl8xLTQtMS0xLTE0Mjg0OA_f2cf1ddf-ceac-4666-8526-31a7457bb534">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGFibGU6ZjFlYzUyOTEwNmNjNDljNWI3NDBlMjc0ODA4YzYwMDIvdGFibGVyYW5nZTpmMWVjNTI5MTA2Y2M0OWM1Yjc0MGUyNzQ4MDhjNjAwMl8yLTQtMS0xLTE0Mjg0OA_9e27521b-e28e-437c-804c-4b251c395ffc">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xODE1_cb06ca99-e97b-4579-8975-41e078df6c2d">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i8fffa0630f104fb999b40d84f3b4f6e1_I20230505"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xL2ZyYWc6ZDAwM2U4NGMzM2NjNDI3Nzk4YzM1NmMzOGE2MDdmMWEvdGV4dHJlZ2lvbjpkMDAzZTg0YzMzY2M0Mjc3OThjMzU2YzM4YTYwN2YxYV8xNzgz_be6989ea-5ae1-4427-bbe2-0c9cdcbc06e0"
      unitRef="shares">69389506</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i261d9f75f170479f85bc09c988bb281f_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMy0xLTEtMS0xNDI4NDg_726ae458-ae2d-4f50-ab7e-9f4dac857ae0"
      unitRef="usd">31534000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ibdf331b459c143d9b4049b77652e1eb4_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMy0zLTEtMS0xNDI4NDg_518b27c3-9330-4bab-9f0c-da20aa268cf8"
      unitRef="usd">48108000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i983a7e147f83460a8496e0fe77764cd7_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfNC0xLTEtMS0xNDI4NDg_62c54a9a-6b6d-4bba-945a-e27683da2017"
      unitRef="usd">3688000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i5e11257fd5e44f0f843f6abcf726cb92_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfNC0zLTEtMS0xNDI4NDg_561eba69-d94d-456b-b8e5-15f5c00b4ef9"
      unitRef="usd">2052000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfNS0xLTEtMS0xNDI4NDg_70936749-de38-4a2c-9a1e-82aa2cbbb98b"
      unitRef="usd">35222000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfNS0zLTEtMS0xNDI4NDg_04739192-b792-4c8f-b539-19ad82c68961"
      unitRef="usd">50160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i261d9f75f170479f85bc09c988bb281f_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfNy0xLTEtMS0xNDI4NDg_01dbc41e-5986-4a0b-bfbb-61bbd4c09188"
      unitRef="usd">19268000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ibdf331b459c143d9b4049b77652e1eb4_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfNy0zLTEtMS0xNDI4NDg_7d353814-58e0-49f1-a558-d372c17980ee"
      unitRef="usd">29731000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i983a7e147f83460a8496e0fe77764cd7_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfOC0xLTEtMS0xNDI4NDg_36462de4-7acd-4fb6-8652-44affd33d9d9"
      unitRef="usd">2472000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i5e11257fd5e44f0f843f6abcf726cb92_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfOC0zLTEtMS0xNDI4NDg_49746b52-8fdb-4f1b-9da1-0373cc6f7741"
      unitRef="usd">1558000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfOS0xLTEtMS0xNDI4NDg_168ae2da-e7b1-4e96-b1cd-d29ede90ca02"
      unitRef="usd">21740000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfOS0zLTEtMS0xNDI4NDg_9d225bfb-98ea-43c0-accb-3ed5d27bba46"
      unitRef="usd">31289000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTAtMS0xLTEtMTUzMDE2_6f505f58-7adc-49e0-a452-836ce5afeb1f"
      unitRef="usd">13482000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTAtMy0xLTEtMTUzMDE2_ae3eea7f-3e71-4953-9621-d44c5e24af1c"
      unitRef="usd">18871000</us-gaap:GrossProfit>
    <us-gaap:SellingAndMarketingExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTEtMS0xLTEtMTQyODQ4_82bdde78-f82a-4d27-bd1b-a21aec9ecf73"
      unitRef="usd">1643000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTEtMy0xLTEtMTQyODQ4_4ac92ca7-fae3-47ba-aebe-b44ecb664e2e"
      unitRef="usd">5252000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTItMS0xLTEtMTQyODQ4_6082789e-c735-40a8-984c-9f2f2521bd93"
      unitRef="usd">2833000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTItMy0xLTEtMTQyODQ4_14983dfe-7a4f-4fcc-884e-4930eb52e2a7"
      unitRef="usd">5430000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTMtMS0xLTEtMTQyODQ4_4ac7417f-ead0-4105-b653-70be7947263e"
      unitRef="usd">21976000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTMtMy0xLTEtMTQyODQ4_7a93a712-740c-443c-bd5a-14995fc6158d"
      unitRef="usd">24556000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTQtMS0xLTEtMTQyODQ4_6630f391-9291-4ccd-b05e-3715c07ff89f"
      unitRef="usd">26452000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTQtMy0xLTEtMTQyODQ4_df5f2f7d-67f7-4fb0-a274-1a34ffa827a4"
      unitRef="usd">35238000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTUtMS0xLTEtMTQyODQ4_d90bff4a-5dff-4eb1-ac54-d3a5c4ec0128"
      unitRef="usd">-12970000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTUtMy0xLTEtMTQyODQ4_3ce6da46-b139-4d5b-a399-a2449678c959"
      unitRef="usd">-16367000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTctMS0xLTEtMTQyODQ4_cf7a0be7-10b6-49bd-ae44-8faf790aecbb"
      unitRef="usd">2496000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTctMy0xLTEtMTQyODQ4_2eb4966c-9b0c-4c62-ac9c-190e7557758b"
      unitRef="usd">12000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:InterestExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTgtMS0xLTEtMTQyODQ4_8b2633e2-97af-4262-8b0a-e90e92771671"
      unitRef="usd">249000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTgtMy0xLTEtMTQyODQ4_1be1da4b-356e-441a-a293-093391074a52"
      unitRef="usd">190000</us-gaap:InterestExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTktMS0xLTEtMTQyODQ4_412aacdc-b169-4d36-bbe1-343593ca8c9b"
      unitRef="usd">-10723000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMTktMy0xLTEtMTQyODQ4_78ab29f0-a5a6-4257-a59f-941a6b15deb3"
      unitRef="usd">-16545000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjAtMS0xLTEtMTQyODQ4_5de2444a-9bf2-4d94-b7b1-94d64d5d000e"
      unitRef="usd">23000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjAtMy0xLTEtMTQyODQ4_af0422f9-c56b-4ba2-b02c-88fa375e5aff"
      unitRef="usd">71000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjEtMS0xLTEtMTQyODQ4_2e28eb70-e3e6-4248-a802-da86ed66a625"
      unitRef="usd">-10746000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjEtMy0xLTEtMTQyODQ4_33d8bde6-2004-49ba-b28c-651286f2add5"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjItMS0xLTEtMTQyODQ4_af75b827-81bc-4b87-a1bb-1aa7aded33c8"
      unitRef="usdPerShare">-0.16</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjItMy0xLTEtMTQyODQ4_fc473e44-a615-4ccb-a614-611f2e3bbf68"
      unitRef="usdPerShare">-0.25</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjMtMS0xLTEtMTQyODQ4_7fb7f93a-06f1-465d-8d25-025e503e13ed"
      unitRef="usdPerShare">-0.16</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjMtMy0xLTEtMTQyODQ4_891fcc1d-66f7-4103-b0c9-7a3743fe7df6"
      unitRef="usdPerShare">-0.25</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjQtMS0xLTEtMTQyODQ4_eb3397ef-5313-4d1e-a5aa-29262ab6ae8c"
      unitRef="shares">68176000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjQtMy0xLTEtMTQyODQ4_be7cf006-cd42-4f54-92cd-770a935f49d5"
      unitRef="shares">67559000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjUtMS0xLTEtMTQyODQ4_c82a1641-f15b-45d4-8d2b-dd39ad8557d6"
      unitRef="shares">68176000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xNi9mcmFnOmZkOWViYjY2MTA3NTQwYmFiZWNmMTY2ZGFiNTAyYmI0L3RhYmxlOjcxNTQ2NTQzOTgzYzQzM2JhZjA3YTQ2MWRiYTRkZWNlL3RhYmxlcmFuZ2U6NzE1NDY1NDM5ODNjNDMzYmFmMDdhNDYxZGJhNGRlY2VfMjUtMy0xLTEtMTQyODQ4_51e05af1-adc7-4788-acb5-dc6006d529cd"
      unitRef="shares">67559000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xOS9mcmFnOmY4MmVkOTRlMmNmMzQ5YWRhNzJhNzJjMDBjNTk4OGY5L3RhYmxlOjBmYmRlMzFmYjY4YjRiMzQ5Njg3NDdkM2Y4ZjZkYTY2L3RhYmxlcmFuZ2U6MGZiZGUzMWZiNjhiNGIzNDk2ODc0N2QzZjhmNmRhNjZfMi0xLTEtMS0xNDI4NDg_4a708526-4cb2-478d-a6cb-1276c790901b"
      unitRef="usd">-10746000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xOS9mcmFnOmY4MmVkOTRlMmNmMzQ5YWRhNzJhNzJjMDBjNTk4OGY5L3RhYmxlOjBmYmRlMzFmYjY4YjRiMzQ5Njg3NDdkM2Y4ZjZkYTY2L3RhYmxlcmFuZ2U6MGZiZGUzMWZiNjhiNGIzNDk2ODc0N2QzZjhmNmRhNjZfMi0zLTEtMS0xNDI4NDg_35924ccc-3b78-486b-9f0a-27eea74e6ae4"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xOS9mcmFnOmY4MmVkOTRlMmNmMzQ5YWRhNzJhNzJjMDBjNTk4OGY5L3RhYmxlOjBmYmRlMzFmYjY4YjRiMzQ5Njg3NDdkM2Y4ZjZkYTY2L3RhYmxlcmFuZ2U6MGZiZGUzMWZiNjhiNGIzNDk2ODc0N2QzZjhmNmRhNjZfNC0xLTEtMS0xNDI4NDg_ff36003f-3406-4345-90d5-d491837afb33"
      unitRef="usd">13000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xOS9mcmFnOmY4MmVkOTRlMmNmMzQ5YWRhNzJhNzJjMDBjNTk4OGY5L3RhYmxlOjBmYmRlMzFmYjY4YjRiMzQ5Njg3NDdkM2Y4ZjZkYTY2L3RhYmxlcmFuZ2U6MGZiZGUzMWZiNjhiNGIzNDk2ODc0N2QzZjhmNmRhNjZfNC0zLTEtMS0xNDI4NDg_97a9e1a7-95ea-4488-aefd-943d960b4b75"
      unitRef="usd">29000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xOS9mcmFnOmY4MmVkOTRlMmNmMzQ5YWRhNzJhNzJjMDBjNTk4OGY5L3RhYmxlOjBmYmRlMzFmYjY4YjRiMzQ5Njg3NDdkM2Y4ZjZkYTY2L3RhYmxlcmFuZ2U6MGZiZGUzMWZiNjhiNGIzNDk2ODc0N2QzZjhmNmRhNjZfNS0xLTEtMS0xNDI4NDg_739d53b3-2126-4dd4-b346-428cfe370557"
      unitRef="usd">-10733000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xOS9mcmFnOmY4MmVkOTRlMmNmMzQ5YWRhNzJhNzJjMDBjNTk4OGY5L3RhYmxlOjBmYmRlMzFmYjY4YjRiMzQ5Njg3NDdkM2Y4ZjZkYTY2L3RhYmxlcmFuZ2U6MGZiZGUzMWZiNjhiNGIzNDk2ODc0N2QzZjhmNmRhNjZfNS0zLTEtMS0xNDI4NDg_0282e39a-2057-40c5-b1b3-10fd16c879c7"
      unitRef="usd">-16587000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNC0xLTEtMS0xNDI4NDg_581390c9-107b-4f29-8c54-98cb07b7c348"
      unitRef="usd">112462000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNC0zLTEtMS0xNDI4NDg_1f80b6bf-f712-44e1-ada9-d1c7d6359efc"
      unitRef="usd">119305000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:ReceivablesNetCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNS0xLTEtMS0xNDI4NDg_9a2b35ec-ac93-4b37-8079-f07279dce83b"
      unitRef="usd">34702000</us-gaap:ReceivablesNetCurrent>
    <us-gaap:ReceivablesNetCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNS0zLTEtMS0xNDI4NDg_8d198bc1-84e2-4ba4-96c6-1b2f74457539"
      unitRef="usd">40069000</us-gaap:ReceivablesNetCurrent>
    <us-gaap:InventoryNet
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNi0xLTEtMS0xNDI4NDg_29269099-2383-493a-90ff-3fde7abb375e"
      unitRef="usd">1629000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNi0zLTEtMS0xNDI4NDg_fb740fc8-f360-46ac-b928-d38ee2b3e52d"
      unitRef="usd">2877000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNy0xLTEtMS0xNDI4NDg_b30392a2-f01f-453c-9782-51c102b6d4d7"
      unitRef="usd">5480000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNy0zLTEtMS0xNDI4NDg_993f6cac-be7e-46f2-884c-44ba98b7ccd1"
      unitRef="usd">4819000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfOC0xLTEtMS0xNDI4NDg_044f10d8-ad07-4b4d-8ac5-a6457df3b184"
      unitRef="usd">1042000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfOC0zLTEtMS0xNDI4NDg_3b91924e-07e4-4394-bf4c-454b62f85815"
      unitRef="usd">893000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfOS0xLTEtMS0xNDI4NDg_4847cf5d-d7f8-41f6-990c-101b1a34180a"
      unitRef="usd">155315000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfOS0zLTEtMS0xNDI4NDg_f3897d97-1fc8-4380-84ea-39eeb9e11409"
      unitRef="usd">167963000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTAtMS0xLTEtMTQyODQ4_e231206e-bbfd-467f-bb84-a4b3e89bfeb3"
      unitRef="usd">4406000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTAtMy0xLTEtMTQyODQ4_25582ba0-578a-4d1c-a7f9-3122442fec58"
      unitRef="usd">4787000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTItMS0xLTEtMTQ4NDUz_07cd84b5-6910-40db-8b8b-480a52822987"
      unitRef="usd">7527000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTItMy0xLTEtMTQ4NDUz_adb995c1-eaae-4b00-8551-621e66b9aa8b"
      unitRef="usd">7832000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTEtMS0xLTEtMTQyODQ4_cf2a65c3-46a3-4394-80c8-623d19901b38"
      unitRef="usd">458000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTEtMy0xLTEtMTQyODQ4_fa93fe82-0039-40d7-a74e-341da6c02c86"
      unitRef="usd">341000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTItMS0xLTEtMTQyODQ4_57f79e66-5b16-49c0-8e2b-a4857fae72b3"
      unitRef="usd">17922000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTItMy0xLTEtMTQyODQ4_763291db-59ad-4f6f-92c4-ce8435dd2d09"
      unitRef="usd">17922000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTMtMS0xLTEtMTQyODQ4_1ed04cc0-0374-4d42-95c0-3a27762b29cc"
      unitRef="usd">33801000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTMtMy0xLTEtMTQyODQ4_ad1ea624-f940-430b-a637-bee48c19215e"
      unitRef="usd">37415000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTQtMS0xLTEtMTQyODQ4_1f8eb23e-158a-4b0a-acf9-8c21e773d7b4"
      unitRef="usd">1223000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTQtMy0xLTEtMTQyODQ4_141ee5b7-633a-4cc8-9000-d6d329de4d7e"
      unitRef="usd">1137000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTUtMS0xLTEtMTQyODQ4_2767e672-0eac-40f2-9934-fd0698a4ac20"
      unitRef="usd">220652000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTUtMy0xLTEtMTQyODQ4_9ea4dea1-2098-43d6-9ad1-315115e3268f"
      unitRef="usd">237397000</us-gaap:Assets>
    <us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTgtMS0xLTEtMTQyODQ4_86c860ec-9095-4c51-955f-89f743f17d75"
      unitRef="usd">18011000</us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTgtMy0xLTEtMTQyODQ4_62cb072f-7fc4-468c-8718-f649489de62c"
      unitRef="usd">22551000</us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent>
    <us-gaap:DeferredCompensationLiabilityCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTktMS0xLTEtMTQyODQ4_39315e67-563f-4bd3-9598-0c79c8f85e03"
      unitRef="usd">7665000</us-gaap:DeferredCompensationLiabilityCurrent>
    <us-gaap:DeferredCompensationLiabilityCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMTktMy0xLTEtMTQyODQ4_1a734bd7-dba2-43ab-978a-ecd54af8a85b"
      unitRef="usd">8388000</us-gaap:DeferredCompensationLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjAtMS0xLTEtMTQyODQ4_8f3f24f9-00e8-4055-a586-28a6d49f3d12"
      unitRef="usd">7203000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjAtMy0xLTEtMTQyODQ4_24f09605-0210-47f2-88c0-31091317f077"
      unitRef="usd">6444000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjEtMS0xLTEtMTQyODQ4_df0a6eca-53ff-4b5d-880f-3dc0446967f0"
      unitRef="usd">1625000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjEtMy0xLTEtMTQyODQ4_0e100aa4-9283-4687-800c-417c5d337e06"
      unitRef="usd">1592000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjItMS0xLTEtMTQyODQ4_093e9d31-7463-484b-8b57-fe203ed8ab44"
      unitRef="usd">494000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjItMy0xLTEtMTQyODQ4_fb6ee333-b05e-45c5-ae25-a7b87460fd33"
      unitRef="usd">361000</us-gaap:OperatingLeaseLiabilityCurrent>
    <tls:OtherFinancingObligationsCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjUtMS0xLTEtMTQ4NDc3_f047d7d6-3fa1-4360-b72b-05003d5e33ec"
      unitRef="usd">0</tls:OtherFinancingObligationsCurrent>
    <tls:OtherFinancingObligationsCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjUtMy0xLTEtMTQ4NDc3_80d085f3-3b35-4395-8f82-ac1efff41b31"
      unitRef="usd">1247000</tls:OtherFinancingObligationsCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjMtMS0xLTEtMTQyODQ4_e1764c0c-f53c-4fb8-a604-47a13e671e29"
      unitRef="usd">3856000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjMtMy0xLTEtMTQyODQ4_c38d190d-12d6-4ef1-8987-a3e78e574b35"
      unitRef="usd">4919000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjQtMS0xLTEtMTQyODQ4_d5904466-a3e5-4233-a32b-a5d2264e6939"
      unitRef="usd">38854000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjQtMy0xLTEtMTQyODQ4_a23143d2-1d3d-4888-aeb8-6f97021187b4"
      unitRef="usd">45502000</us-gaap:LiabilitiesCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjYtMS0xLTEtMTQyODQ4_2c9520e7-a2a9-4ba4-90f8-186fee3590c2"
      unitRef="usd">10832000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjYtMy0xLTEtMTQyODQ4_d26c0d74-dcf7-4b7e-8655-25564ecca679"
      unitRef="usd">11248000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjctMS0xLTEtMTQyODQ4_1ec5a385-959b-4a20-ad52-4df3ba5badca"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjctMy0xLTEtMTQyODQ4_3257b540-e032-42c3-bdc2-b2d141ba4c56"
      unitRef="usd">27000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <tls:OtherFinancingObligationsNoncurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzAtMS0xLTEtMTQ4NDk2_19a0e0dd-b954-459e-8918-28ba4cedd7a5"
      unitRef="usd">0</tls:OtherFinancingObligationsNoncurrent>
    <tls:OtherFinancingObligationsNoncurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzAtMy0xLTEtMTQ4NDk2_fed47232-aefc-4243-a078-816392c1739a"
      unitRef="usd">7211000</tls:OtherFinancingObligationsNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjgtMS0xLTEtMTQyODQ4_f5cdcf18-b5e9-4502-9d9c-8f22783e414e"
      unitRef="usd">770000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjgtMy0xLTEtMTQyODQ4_14f4112e-f429-4304-b1ec-658430b7dec7"
      unitRef="usd">758000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjktMS0xLTEtMTQyODQ4_d111361d-6770-4963-821d-bdc6268a78b3"
      unitRef="usd">301000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMjktMy0xLTEtMTQyODQ4_46373383-3bfc-4fb5-b16f-31f9ef698769"
      unitRef="usd">297000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzAtMS0xLTEtMTQyODQ4_bfc6ec66-6ade-414d-b22d-e759f7c58ef6"
      unitRef="usd">50757000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzAtMy0xLTEtMTQyODQ4_d4f88d55-4914-4c38-bac4-5ab9ac11ec60"
      unitRef="usd">65043000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzItMS0xLTEtMTQyODQ4_4b00b2dc-220c-4b4b-969a-c8596e740a88"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzItMy0xLTEtMTQyODQ4_966d455f-24d2-4652-ad74-265fd6f762b8"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDcx_a7a43482-1800-4710-90ae-2517bcee7545"
      unitRef="usdPerShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDcx_f1b5caef-7aa0-4278-8ba7-2773d622311d"
      unitRef="usdPerShare">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDg1_e04f5f59-b7bc-4506-ba91-f2612d8c1fcd"
      unitRef="shares">250000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDg1_e9734bcf-9c29-4da1-8389-e94dbb70bebd"
      unitRef="shares">250000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDg4_7755dee1-7ddc-45dc-b821-4dd6bb2b1e32"
      unitRef="shares">69388256</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDg4_e9c477d8-b32d-4d1c-95e1-954a8af0d2ba"
      unitRef="shares">69388256</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDky_d326b370-b7e1-4fb4-a648-7319d607e627"
      unitRef="shares">67431632</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMC0xLTEtMTQyODQ4L3RleHRyZWdpb246ZjBjNTQ5MjI0MTY4NGQxZWFlNGM1ZGFmMGM2NmU1NTRfNTQ5NzU1ODE0MDky_d8bd4bbb-ffea-484f-8a50-a453fc8d3875"
      unitRef="shares">67431632</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMS0xLTEtMTQyODQ4_458c136a-3ef9-4377-9458-dc11153319b4"
      unitRef="usd">108000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzUtMy0xLTEtMTQyODQ4_f69262dc-cd0d-4100-a906-d460bb31a390"
      unitRef="usd">106000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzYtMS0xLTEtMTQyODQ4_2b140b02-c4ca-4d60-9dfa-c6e9cc60eb8d"
      unitRef="usd">420980000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzYtMy0xLTEtMTQyODQ4_c1bcd86e-077b-4d29-9578-f08c61fb91fc"
      unitRef="usd">412708000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzctMS0xLTEtMTQyODQ4_1c3a2e66-8f50-4e41-af12-70b984a28dcf"
      unitRef="usd">-42000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzctMy0xLTEtMTQyODQ4_219f3db7-cc18-4f2d-9718-6b44eaf92951"
      unitRef="usd">-55000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzgtMS0xLTEtMTQyODQ4_a7841f80-9327-43a5-b555-637145898565"
      unitRef="usd">-251151000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzgtMy0xLTEtMTQyODQ4_cb96d6dd-8693-44cd-8bf3-097bfe5bc37b"
      unitRef="usd">-240405000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzktMS0xLTEtMTQyODQ4_d0bde9d4-455d-455e-943f-9eaec54b3106"
      unitRef="usd">169895000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfMzktMy0xLTEtMTQyODQ4_4d011b62-772b-40af-bc95-fa91ecfc9ee5"
      unitRef="usd">172354000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNDAtMS0xLTEtMTQyODQ4_fd4c53e8-8883-4d98-b1ef-6e11f85e93ae"
      unitRef="usd">220652000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yMi9mcmFnOmRmMGFjNzc0MTQ3ODQ1YTE5NWJiNzc4YjgyODhlZDE1L3RhYmxlOmZmMTA0NzM1YjAxMzQxMmY5NmFhOGFkMmY0NzM4MTYwL3RhYmxlcmFuZ2U6ZmYxMDQ3MzViMDEzNDEyZjk2YWE4YWQyZjQ3MzgxNjBfNDAtMy0xLTEtMTQyODQ4_f8535c4e-14e7-4fe0-bccf-ca0f2ce106fc"
      unitRef="usd">237397000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMy0xLTEtMS0xNDI4NDg_d6aefbcb-ac27-47d6-9996-9d383e03d57e"
      unitRef="usd">-10746000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMy0zLTEtMS0xNDI4NDg_22ae34ee-b58c-422a-b7a8-aab8f8cf4ddf"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:ShareBasedCompensation
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfNS0xLTEtMS0xNDI4NDg_213d605a-68cc-4e43-b20f-6bbb83de214a"
      unitRef="usd">9499000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfNS0zLTEtMS0xNDI4NDg_4af32293-3935-4e7f-b162-83c178700853"
      unitRef="usd">15931000</us-gaap:ShareBasedCompensation>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfNi0xLTEtMS0xNDI4NDg_db5815eb-c982-4c88-8c8a-96d398501a31"
      unitRef="usd">1425000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfNi0zLTEtMS0xNDI4NDg_bc17b504-6b18-44b9-9ec1-7c18abfe20cf"
      unitRef="usd">1405000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfNy0xLTEtMS0xNDI4NDg_150e63ac-4fb9-450e-afee-1064f8960bbd"
      unitRef="usd">12000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfNy0zLTEtMS0xNDI4NDg_163636c3-0234-4f19-8650-f4b1641d0738"
      unitRef="usd">12000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:AccretionExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfOC0xLTEtMS0xNDI4NDg_e4fa9d2f-8e5b-43fa-987d-c4fdeb155024"
      unitRef="usd">2000</us-gaap:AccretionExpense>
    <us-gaap:AccretionExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfOC0zLTEtMS0xNDI4NDg_ff8a1d46-1be7-414d-a7c5-ffe8e7005015"
      unitRef="usd">12000</us-gaap:AccretionExpense>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfOS0xLTEtMS0xNDI4NDg_ebb5525a-bc7f-4278-9b14-262aa1d87879"
      unitRef="usd">-1000</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:GainLossOnDispositionOfAssets1
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfOS0zLTEtMS0xNDI4NDg_8b3ce46e-d7fb-42f6-8f9b-c4380c0bd18e"
      unitRef="usd">0</us-gaap:GainLossOnDispositionOfAssets1>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTItMS0xLTEtMTQ4Njc5_d5c0dfd7-90ff-4bf2-b603-1eb910a241e9"
      unitRef="usd">89000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTItMy0xLTEtMTQ4Njc5_7357dfbf-e5ef-48c7-b45b-be0fcfc1a204"
      unitRef="usd">95000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTMtMS0xLTEtMTQ4Njc5_4894b3ca-31e4-42fb-85ea-601abb016b2a"
      unitRef="usd">17000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTMtMy0xLTEtMTQ4Njc5_54a22ebe-402f-4e3a-985b-bdb585cadebd"
      unitRef="usd">0</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTQtMS0xLTEtMTUzNzc4_7e91dc5f-1827-454d-90ec-9905d5461c53"
      unitRef="usd">1427000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTQtMy0xLTEtMTUzNzc4_a333f928-be28-40ec-983e-bc5b9e9ec309"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTUtMS0xLTEtMTQ4Njc5_30f594c3-9662-4ca8-aecf-b021d56de2fe"
      unitRef="usd">-5279000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTUtMy0xLTEtMTQ4Njc5_89ef2872-966f-43f5-bd1b-ed65f52216ff"
      unitRef="usd">-2014000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTYtMS0xLTEtMTQ4Njc5_9801e308-193a-4ef0-ac80-9a6d6d2e6977"
      unitRef="usd">-1248000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTYtMy0xLTEtMTQ4Njc5_a2b66172-8fa6-4e80-8550-fd88ab026083"
      unitRef="usd">850000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTctMS0xLTEtMTQ4Njc5_072825a2-c2cb-426a-9899-b7739df6b846"
      unitRef="usd">927000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTctMy0xLTEtMTQ4Njc5_481fd7cb-4a0d-44ba-8762-1804b42ad7db"
      unitRef="usd">3563000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTgtMS0xLTEtMTQ4Njc5_269222ef-cf5c-490b-a6db-1176e3a3d7a8"
      unitRef="usd">-4489000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTgtMy0xLTEtMTQ4Njc5_c09b069d-fa6d-4555-9b7d-ec55d238f7db"
      unitRef="usd">674000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTktMS0xLTEtMTQ4Njc5_196f2bed-0db1-4876-af80-07029ee69517"
      unitRef="usd">-364000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTktMy0xLTEtMTQ4Njc5_17b56665-f9c0-4872-9eee-0a65f34b7e4f"
      unitRef="usd">495000</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjAtMS0xLTEtMTQ4Njc5_bd04f1db-9392-4bf7-b87c-cf4bd4fcb406"
      unitRef="usd">758000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjAtMy0xLTEtMTQ4Njc5_0e30a665-aa4e-4d60-9db1-bff8d73c0bc9"
      unitRef="usd">655000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInOtherCurrentLiabilities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTAtMS0xLTEtMTQyODQ4_3caf22c6-b010-4a54-a4f1-cc91771b7437"
      unitRef="usd">-477000</us-gaap:IncreaseDecreaseInOtherCurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherCurrentLiabilities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTAtMy0xLTEtMTQyODQ4_9002ada4-0ee9-46d0-8db8-49755054c92f"
      unitRef="usd">-15000</us-gaap:IncreaseDecreaseInOtherCurrentLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTEtMS0xLTEtMTQyODQ4_2c6b60cd-7d65-45e1-afd8-f456a8295f9b"
      unitRef="usd">-100000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTEtMy0xLTEtMTQyODQ4_83a02869-0389-4da8-88c9-8977eff7e8e1"
      unitRef="usd">249000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToDevelopSoftware
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTQtMS0xLTEtMTQyODQ4_ac0abc1a-0d32-4b47-8a03-b43f530e02fb"
      unitRef="usd">3800000</us-gaap:PaymentsToDevelopSoftware>
    <us-gaap:PaymentsToDevelopSoftware
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTQtMy0xLTEtMTQyODQ4_7ee6f982-f49a-4e15-a051-0d10acaa83a9"
      unitRef="usd">2795000</us-gaap:PaymentsToDevelopSoftware>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTUtMS0xLTEtMTQyODQ4_4a414096-3bc2-4856-9a95-6d2c674380a3"
      unitRef="usd">223000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTUtMy0xLTEtMTQyODQ4_68f0d29c-fba1-4842-91e5-6daef59e5f63"
      unitRef="usd">546000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <tls:PaymentOfDFTHoldbackAmount
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjYtMS0xLTEtMTQ4Njk5_77171aa5-70fb-4aab-ae9b-d35b6357b5a8"
      unitRef="usd">564000</tls:PaymentOfDFTHoldbackAmount>
    <tls:PaymentOfDFTHoldbackAmount
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjYtMy0xLTEtMTQ4Njk5_1d5368ba-9bec-4283-9ac1-dc10207a1cc4"
      unitRef="usd">0</tls:PaymentOfDFTHoldbackAmount>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTYtMS0xLTEtMTQyODQ4_a82064d0-f28d-4dba-86a6-a207e6ac1212"
      unitRef="usd">-4587000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTYtMy0xLTEtMTQyODQ4_e7d7394f-a899-4033-a204-7c95d410a324"
      unitRef="usd">-3341000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTktMS0xLTEtMTQyODQ4_dd68c871-46f1-4d6c-a63f-db898ddd9ad0"
      unitRef="usd">383000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMTktMy0xLTEtMTQyODQ4_74a6092f-27f4-4015-83fa-b2f1ed236fc4"
      unitRef="usd">351000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjAtMS0xLTEtMTQyODQ4_b3f95f40-e781-420e-a338-11dae8ce279c"
      unitRef="usd">1520000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjAtMy0xLTEtMTQyODQ4_7538c870-d4e3-4635-ae88-c35d783867a6"
      unitRef="usd">2886000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMzEtMS0xLTEtMTQ4NzE4_4cafcc3d-4cff-4944-84ee-9fedcdab0815"
      unitRef="usd">139000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMzEtMy0xLTEtMTQ4NzE4_4e071317-3a65-4f21-87e9-109d50653796"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjEtMS0xLTEtMTQyODQ4_91b8b458-3773-45f9-b135-ea1c247330af"
      unitRef="usd">114000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjEtMy0xLTEtMTQyODQ4_9fcf79fb-4e88-4594-98a5-99c2c950248e"
      unitRef="usd">0</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjItMS0xLTEtMTQyODQ4_270269ed-44b7-4c05-8fe1-82f7f7d128fc"
      unitRef="usd">-2156000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjItMy0xLTEtMTQyODQ4_501a0be1-0cb6-45b2-afef-d3ffac85169d"
      unitRef="usd">-3237000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjQtMS0xLTEtMTQyODQ4_2c3336c9-ef76-459d-b419-ca470d7901a7"
      unitRef="usd">-6843000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjQtMy0xLTEtMTQyODQ4_d0b2b0f7-51a4-46bb-8597-7e666227c04d"
      unitRef="usd">-6329000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjUtMS0xLTEtMTQyODQ4_504f30a1-11cc-4e1c-95cb-87eb63612ec6"
      unitRef="usd">119438000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ie0c630acc7bb4b059a993be362c712fe_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjUtMy0xLTEtMTQyODQ4_bd5ff59f-a96c-4a79-a3cf-702d25a39bb3"
      unitRef="usd">126562000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjctMS0xLTEtMTQyODQ4_7daaf302-0c85-46ab-972b-44d6cdb84ebb"
      unitRef="usd">112595000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ic44de1c9eb104db29a7ab0578bae1835_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yNS9mcmFnOmE0NzJjMDBiNzQ1ODQ0YzNhNzljZjJlMzNiOWNiZGM2L3RhYmxlOjU5YWQ3MDM5NGMyZTQ0MmY4ZjY5NGY2YWVlYWMxMTg2L3RhYmxlcmFuZ2U6NTlhZDcwMzk0YzJlNDQyZjhmNjk0ZjZhZWVhYzExODZfMjctMy0xLTEtMTQyODQ4_ce6a2ea8-ea46-4a09-b5a0-e0e57bd89862"
      unitRef="usd">120233000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i7beaa91fe8d74fe1a2bd981f25d2efd5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMy0xLTEtMS0xNDI4NDg_c332cbc6-a5f9-4f3b-99ca-912c25159ff8"
      unitRef="shares">67431000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i7beaa91fe8d74fe1a2bd981f25d2efd5_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMy0zLTEtMS0xNDI4NDg_8ce486f1-3eae-4ee9-98a9-1edeeac895d1"
      unitRef="usd">106000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id1aa243c74ce44db8193dc6e78271fd9_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMy01LTEtMS0xNDI4NDg_3e04e051-5988-4b97-bf17-e4ef31cefd64"
      unitRef="usd">412708000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i33627c0ef89c46089aed7e465bb4f1be_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMy03LTEtMS0xNDI4NDg_98b65f30-8b1b-437d-806c-96a2bbe5dfa5"
      unitRef="usd">-55000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic621744b7c504defb1067ea49befaa0c_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMy05LTEtMS0xNDI4NDg_2457957e-f475-4e33-8bd9-4910d1ffb3a5"
      unitRef="usd">-240405000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMy0xMS0xLTEtMTQyODQ4_83177ebf-5a74-42dc-8417-1ad888da7a73"
      unitRef="usd">172354000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i06aade73685d4459ad87a1141f59aeed_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNC05LTEtMS0xNDI4NDg_59ea17e2-6732-45b7-8669-6e9c05d2a9f6"
      unitRef="usd">-10746000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNC0xMS0xLTEtMTQyODQ4_7e7c0d9b-4221-4fab-84a7-0621c425c174"
      unitRef="usd">-10746000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i78288467278b447c9f8ec6b205bd3093_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNS03LTEtMS0xNDI4NDg_6ed49e7d-cf9d-4243-b722-a3ec34d48c39"
      unitRef="usd">13000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNS0xMS0xLTEtMTQyODQ4_ce38914c-b0a0-4a24-9493-eb7e92b6002c"
      unitRef="usd">13000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:RestrictedStockSharesIssuedNetOfSharesForTaxWithholdings
      contextRef="i2f20f994facd4d578fd8fa123a395f35_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNi0xLTEtMS0xNDI4NDg_f73040c1-ee1b-46a4-83c0-6d8807a07872"
      unitRef="shares">1180000</us-gaap:RestrictedStockSharesIssuedNetOfSharesForTaxWithholdings>
    <us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings
      contextRef="i2f20f994facd4d578fd8fa123a395f35_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNi0zLTEtMS0xNDI4NDg_549af6e8-4b5f-4487-bd94-d3efc9a5f0ee"
      unitRef="usd">1000</us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings>
    <us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings
      contextRef="i1d6f74ee58234fa0b9037a4e53ae5089_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNi01LTEtMS0xNDI4NDg_a3680b22-d921-4e38-9a6f-2eb7d2881936"
      unitRef="usd">-1585000</us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings>
    <us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNi0xMS0xLTEtMTQyODQ4_b9362ab4-3c7a-4e92-b0eb-1852e6b679b6"
      unitRef="usd">-1584000</us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i1d6f74ee58234fa0b9037a4e53ae5089_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNy01LTEtMS0xNDI4NDg_deea2dd7-9586-41f1-b58a-2eda5ffc8d73"
      unitRef="usd">7916000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfNy0xMS0xLTEtMTQyODQ4_840d6d7b-1f98-406f-8b04-e40f70897b5e"
      unitRef="usd">7916000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i2f20f994facd4d578fd8fa123a395f35_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOS0xLTEtMS0xNTM0ODQ_bde97d0b-c787-4a09-9394-f2f72b5b9e3b"
      unitRef="shares">777000</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i2f20f994facd4d578fd8fa123a395f35_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOS0zLTEtMS0xNTM0ODQ_66edfa6a-e295-419c-b176-9b6a45ec78b6"
      unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i1d6f74ee58234fa0b9037a4e53ae5089_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOS01LTEtMS0xNTM0ODQ_c042ccca-e165-421f-b3d7-84b01752d961"
      unitRef="usd">1941000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOS0xMS0xLTEtMTU3ODUz_fa3d9041-f6ea-42ad-b8e7-097f4ccb83f7"
      unitRef="usd">1942000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i0a8324a1481843ad9174c9ecdb9c7db4_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOC0xLTEtMS0xNDI4NDg_7455749a-9b16-41ad-ad19-6015b05c5f9d"
      unitRef="shares">69388000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i0a8324a1481843ad9174c9ecdb9c7db4_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOC0zLTEtMS0xNDI4NDg_d1b0bacf-638c-4782-91b4-ddb27cd7c8d6"
      unitRef="usd">108000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i5d6f83abd1d44367b4bdbd16560f3c26_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOC01LTEtMS0xNDI4NDg_1a179806-af64-437a-a6b9-40502e508552"
      unitRef="usd">420980000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i677e17bf93124a84a28565bdbfc05322_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOC03LTEtMS0xNDI4NDg_9a501803-6716-423b-a298-99e51c4507ee"
      unitRef="usd">-42000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2758ad98902548fc882c5363281908c3_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOC05LTEtMS0xNDI4NDg_d45c71e9-c7ff-47f7-a317-eb4d2dc12a37"
      unitRef="usd">-251151000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfOC0xMS0xLTEtMTQyODQ4_c46e6f58-cafd-4861-9723-4a7e52b98a3e"
      unitRef="usd">169895000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="if809649949df4ec2bcbee1f0dc63d0e4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTAtMS0xLTEtMTQyODQ4_c7ffadeb-f0ad-4721-b9e7-e856ba9958be"
      unitRef="shares">66767000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="if809649949df4ec2bcbee1f0dc63d0e4_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTAtMy0xLTEtMTQyODQ4_8774459f-4ec9-47ce-ae43-48f3d8a00c63"
      unitRef="usd">105000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia20e62a3ef9e4511a4c6fce652cf8cae_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTAtNS0xLTEtMTQyODQ4_a9250dd8-9d44-4d38-abfc-13b7cec6d8d9"
      unitRef="usd">367153000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i611711fd54364fad99c7bb5672f91889_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTAtNy0xLTEtMTQyODQ4_071362e1-27d9-4d99-acbf-b00ca47f5a93"
      unitRef="usd">-27000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2c39828f31a84b5ab1709a19e94cbb9d_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTAtOS0xLTEtMTQyODQ4_5fded275-646a-4bd6-8d66-3e2bf9086aaa"
      unitRef="usd">-186977000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie0c630acc7bb4b059a993be362c712fe_I20211231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTAtMTEtMS0xLTE0Mjg0OA_dc9f849d-ac7a-4838-b9c8-e839cb55338e"
      unitRef="usd">180254000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="i9deb3ad18d614905b0fde8210fe69268_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTEtOS0xLTEtMTQyODQ4_7c67e30c-40b4-48b9-ac26-8e7be386ea52"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTEtMTEtMS0xLTE0Mjg0OA_9c47cefc-6608-432d-a6df-de29313a4548"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i6e60250574034cbc9d6ead34c610db4e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTItNy0xLTEtMTQyODQ4_a16f6e2c-32f0-4482-ac2d-be29286f92f0"
      unitRef="usd">29000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTItMTEtMS0xLTE0Mjg0OA_acccc6c5-eb4a-4354-9a75-78a8a5e74e36"
      unitRef="usd">29000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:RestrictedStockSharesIssuedNetOfSharesForTaxWithholdings
      contextRef="i4eeeb476b81141ceac4c7554369b448f_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtMS0xLTEtMTQ4Nzkw_a352b87e-c956-4b49-9c62-305db0191a70"
      unitRef="shares">1100000</us-gaap:RestrictedStockSharesIssuedNetOfSharesForTaxWithholdings>
    <us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings
      contextRef="i4eeeb476b81141ceac4c7554369b448f_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtMy0xLTEtMTQ4Nzkw_2af26e31-a1d5-4bfa-8f4e-b8d499ba4d26"
      unitRef="usd">1000</us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings>
    <us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings
      contextRef="ia0ecc96f06b64dd898a0bb13afd29b85_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtNS0xLTEtMTQ4Nzkw_93329d39-be80-496a-a6e4-34b6fc7f75a6"
      unitRef="usd">-2887000</us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings>
    <us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtMTEtMS0xLTE0ODc5MA_0bd8b9bb-faf9-40ac-a9e5-ded1ecd02baf"
      unitRef="usd">-2886000</us-gaap:RestrictedStockValueSharesIssuedNetOfTaxWithholdings>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ia0ecc96f06b64dd898a0bb13afd29b85_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTMtNS0xLTEtMTQyODQ4_59b14039-f9f1-4f5d-b922-f351ecbb2bdc"
      unitRef="usd">14280000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTMtMTEtMS0xLTE0Mjg0OA_37b42148-0aff-4cec-8853-cfdaa1bb1535"
      unitRef="usd">14280000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ia0ef6632ccf94a5093fc7c9c0bc69dff_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtMS0xLTEtMTQyODQ4_9417f8c2-e7db-4a6e-b65a-15617b8fa79d"
      unitRef="shares">67867000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ia0ef6632ccf94a5093fc7c9c0bc69dff_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtMy0xLTEtMTQyODQ4_b524de5d-45a2-46c6-a54f-06a7bcb40ef6"
      unitRef="usd">106000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie63ef0b1f8c648e987327e9ecba8597b_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtNS0xLTEtMTQyODQ4_38b3f034-293a-4b7f-a28b-a80c00254de6"
      unitRef="usd">378546000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i2596b61e8d76422db8fe8aea46799d2f_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtNy0xLTEtMTQyODQ4_8f7658aa-8247-4700-abdb-4d8c0b5bd4a8"
      unitRef="usd">2000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ice8321a8df8a48e59b906290ead40f35_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtOS0xLTEtMTQyODQ4_6c1cb6de-e00c-433e-b30f-6e46306a5f16"
      unitRef="usd">-203593000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic44de1c9eb104db29a7ab0578bae1835_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8yOC9mcmFnOjliYmYyMzJjOTI5OTQ0ZTJhNWI5OTFmNWNiMWFiMTlhL3RhYmxlOmRlM2E0ZWRkN2RjMTRiMGY4NDA1YzFkZDBlZTZhYzc0L3RhYmxlcmFuZ2U6ZGUzYTRlZGQ3ZGMxNGIwZjg0MDVjMWRkMGVlNmFjNzRfMTQtMTEtMS0xLTE0Mjg0OA_84810bf2-3a10-49a7-a305-9c7ac6506303"
      unitRef="usd">175061000</us-gaap:StockholdersEquity>
    <us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNC9mcmFnOjU5Y2RjNTRiY2MxMDRiNzVhZTkzZDZhZTE4OWQ3Yzg4L3RleHRyZWdpb246NTljZGM1NGJjYzEwNGI3NWFlOTNkNmFlMTg5ZDdjODhfMjI1NjA_1651f780-b20a-4d55-a370-4f2e55a905e0">ORGANIZATIONTelos Corporation, together with its subsidiaries (collectively, the "Company," "we," "our" or "Telos"), a Maryland corporation, is a leading provider of cyber, cloud and enterprise security solutions for the world's most security-conscious organizations. We own all of the issued and outstanding shares of Xacta Corporation, a subsidiary that develops, markets and sells government-validated secure enterprise solutions to government and commercial customers. We own the issued and outstanding share capital of ubIQuity.com, inc., a holding company for Xacta Corporation. We also have a 100% ownership interest in Telos Identity Management Solutions, LLC ("Telos ID"), Teloworks, Inc., and Telos APAC Pte. Ltd.</us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock>
    <us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired
      contextRef="i70a64dc6699d4001a4761004399ee407_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNC9mcmFnOjU5Y2RjNTRiY2MxMDRiNzVhZTkzZDZhZTE4OWQ3Yzg4L3RleHRyZWdpb246NTljZGM1NGJjYzEwNGI3NWFlOTNkNmFlMTg5ZDdjODhfNTQ5NzU1ODczNTI0_4f795caa-0d38-45e0-b75e-6eefc69415ba"
      unitRef="number">1</us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDgz_93667464-1942-4d33-b218-5578ab690564">SIGNIFICANT ACCOUNTING POLICIES&lt;div style="margin-top:10pt"&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;Basis of Presentation and Principle of Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying unaudited consolidated financial statements include the accounts of Telos and its subsidiaries (see &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_34" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 1 &#x2013; Organization&lt;/a&gt;&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;), all of whose issued and outstanding share capital is wholly owned directly and indirectly by Telos Corporation. All intercompany transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt"&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;Basis of Presentation for Interim Periods&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Certain information and footnote disclosures normally included for the annual financial statements prepared in accordance with accounting principles generally accepted in the United States of America ("U.S. GAAP") have been condensed or omitted for the interim periods presented. We believe that the unaudited interim financial statements include all adjustments (which are normal and recurring) necessary to state fairly our financial position and the results of operations and cash flows for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The results of operations for the interim periods presented are not necessarily indicative of results that may be expected for the year or future periods. The financial statements should be read in conjunction with our audited consolidated financial statements and the notes thereto for the year ended December&#160;31, 2022, included in our Annual Report on Form 10-K for the fiscal year then ended. We have continued to follow the accounting policies set forth in those financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt"&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;Basis of Comparison - Revision of Previously Issued Interim Financial Statements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 course of preparing the Company's consolidated financial statements for the year ended December 31, 2022, we identified that stock-based compensation expense related to performance-based restricted stock unit (&#x201c;PSU&#x201d;) awards with market conditions was erroneously reversed when those PSUs were forfeited during the quarter ended March 31, 2022. Although the Company has determined that the error did not have a material impact on its previously issued interim consolidated financial statements, it revised the previously reported interim financial information in conjunction with the issuance of its quarterly filings on Form 10-Q for the quarter ended March 31, 2023. &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;Further information regarding the misstatements and related revisions are included under &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1124" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;N&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1124" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;ote &lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1124" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;20&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1124" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; &#x2013; Revision of P&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1124" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;rior Year Interim Financial Statements&lt;/a&gt;&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; to the unaudited consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:10pt"&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;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Preparing unaudited consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of revenue, expenses, assets and liabilities, and disclosure of contingent assets and liabilities. The Company regularly assesses these estimates; however, actual results could differ from those estimates. We base our estimates on historical experience, currently available information, and various other assumptions that we believe are reasonable under the circumstances.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management evaluates these estimates and assumptions on an ongoing basis, including those relating to revenue recognition on cost estimation on certain contracts, allowance for credit losses, inventory obsolescence, valuation allowance for deferred tax assets, income taxes, certain assumptions related to share-based compensation, valuation of intangible assets and goodwill, restructuring expenses accruals, and contingencies.&#160;Actual results could differ from those estimates. The impact of changes in estimates is recorded in the period in which they become known.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:10pt"&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;Restructuring Expenses&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 fourth quarter of 2022, the Company committed to a restructuring plan to streamline its workforce and spending to better align its cost structure with its volume of business. The restructuring plan reduced the Company's workforce, with a majority of the affected employees separating from the business in early 2023. In connection with this restructuring plan, we incurred restructuring-related costs, including employee severance and related benefit costs. Employee severance and related benefit costs may include cash payments, outplacement services and continuing health insurance coverage. Severance costs pursuant to ongoing-benefit arrangements are recognized when probable and reasonably estimated. Other related costs include external consulting and advisory fees related to implementing the restructuring plan. These costs are recognized at fair value in the period in which the costs are incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 Company's recent Annual Report on Form 10-K for the year ended December 31, 2022, the Company estimated that the expected restructuring expenses were $2.8&#160;million as of December 31, 2022. As of March 31, 2023, the Company has updated its total expected restructuring plan costs to $4.0&#160;million. The Company reviews the restructuring plan and may incur incremental restructuring costs during the remainder of 2023 when determined as probable and estimable. The restructuring expenses are recorded under "Selling, general and administrative expenses" in the Company's unaudited consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At each reporting date, the Company evaluates its restructuring expense accrual to determine if the liabilities reported are still appropriate. Any changes in the estimated costs of executing the approved restructuring plan are reflected in the Company's unaudited consolidated statement of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" 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:9pt;font-weight:700;line-height:100%"&gt;Table 2: Summary of Changes in Restructuring Expenses Accrual&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;/tr&gt;&lt;tr&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: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:9pt;font-weight:400;line-height:100%"&gt;Severance and related benefit costs (1)&lt;/span&gt;&lt;/div&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: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:9pt;font-weight:400;line-height:100%"&gt;Other related costs (1)&lt;/span&gt;&lt;/div&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:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,763&#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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,763&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Charges/(adjustments)&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:9pt;font-weight:400;line-height:100%"&gt;(100)&lt;/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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash payments&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:9pt;font-weight:400;line-height:100%"&gt;(1,673)&lt;/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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"/&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:9pt;font-weight:400;line-height:100%"&gt;(1,673)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Balance at March 31, 2023&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;990&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,300&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,290&#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-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) Restructuring-related liabilities are reported as part of "Other current liabilities" in the Company's unaudited consolidated balance sheets, see &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1202" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 9 - Other Balance Sheet Components&lt;/a&gt;&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; for further details.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:10pt"&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;Recent Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;From time to time, new accounting standards are issued by the Financial Accounting Standard Board or other standard-setting bodies and are adopted by the Company as of the specified accounting date. Unless otherwise discussed, the Company believes that issued standards not yet effective will not have a material effect on its financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:ConsolidationPolicyTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDg1_f1e0e80b-24d4-4cf2-9148-20a411278cc6">&lt;div style="margin-top:10pt"&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;Basis of Presentation and Principle of Consolidation&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying unaudited consolidated financial statements include the accounts of Telos and its subsidiaries (see &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_34" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 1 &#x2013; Organization&lt;/a&gt;&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;), all of whose issued and outstanding share capital is wholly owned directly and indirectly by Telos Corporation. All intercompany transactions have been eliminated in consolidation.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:PriorPeriodReclassificationAdjustmentDescription
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDg2_a6522e08-a651-47bf-a3f5-f3eda12d103e">Basis of Comparison - Revision of Previously Issued Interim Financial StatementsDuring the course of preparing the Company's consolidated financial statements for the year ended December 31, 2022, we identified that stock-based compensation expense related to performance-based restricted stock unit (&#x201c;PSU&#x201d;) awards with market conditions was erroneously reversed when those PSUs were forfeited during the quarter ended March 31, 2022. Although the Company has determined that the error did not have a material impact on its previously issued interim consolidated financial statements, it revised the previously reported interim financial information in conjunction with the issuance of its quarterly filings on Form 10-Q for the quarter ended March 31, 2023.</us-gaap:PriorPeriodReclassificationAdjustmentDescription>
    <us-gaap:UseOfEstimates
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDg3_ef37b075-4c24-4247-8243-e4a78fa66fc1">&lt;div style="margin-bottom:9pt;margin-top:10pt"&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;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Preparing unaudited consolidated financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of revenue, expenses, assets and liabilities, and disclosure of contingent assets and liabilities. The Company regularly assesses these estimates; however, actual results could differ from those estimates. We base our estimates on historical experience, currently available information, and various other assumptions that we believe are reasonable under the circumstances.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management evaluates these estimates and assumptions on an ongoing basis, including those relating to revenue recognition on cost estimation on certain contracts, allowance for credit losses, inventory obsolescence, valuation allowance for deferred tax assets, income taxes, certain assumptions related to share-based compensation, valuation of intangible assets and goodwill, restructuring expenses accruals, and contingencies.&#160;Actual results could differ from those estimates. The impact of changes in estimates is recorded in the period in which they become known.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:CostsAssociatedWithExitOrDisposalActivitiesOrRestructuringsPolicyTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDg5_3cfdffad-36ff-4c35-92ff-c4d6d1db6a78">&lt;div style="margin-bottom:9pt;margin-top:10pt"&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;Restructuring Expenses&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 fourth quarter of 2022, the Company committed to a restructuring plan to streamline its workforce and spending to better align its cost structure with its volume of business. The restructuring plan reduced the Company's workforce, with a majority of the affected employees separating from the business in early 2023. In connection with this restructuring plan, we incurred restructuring-related costs, including employee severance and related benefit costs. Employee severance and related benefit costs may include cash payments, outplacement services and continuing health insurance coverage. Severance costs pursuant to ongoing-benefit arrangements are recognized when probable and reasonably estimated. Other related costs include external consulting and advisory fees related to implementing the restructuring plan. These costs are recognized at fair value in the period in which the costs are incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 Company's recent Annual Report on Form 10-K for the year ended December 31, 2022, the Company estimated that the expected restructuring expenses were $2.8&#160;million as of December 31, 2022. As of March 31, 2023, the Company has updated its total expected restructuring plan costs to $4.0&#160;million. The Company reviews the restructuring plan and may incur incremental restructuring costs during the remainder of 2023 when determined as probable and estimable. The restructuring expenses are recorded under "Selling, general and administrative expenses" in the Company's unaudited consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:CostsAssociatedWithExitOrDisposalActivitiesOrRestructuringsPolicyTextBlock>
    <us-gaap:RestructuringCharges
      contextRef="i1384d47d660644b9b2a712eb84c7a85d_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV81NDk3NTU4OTQ2NDQ_b9412522-50a2-4442-92a4-e9eaa9ffbe69"
      unitRef="usd">2800000</us-gaap:RestructuringCharges>
    <us-gaap:RestructuringCharges
      contextRef="i9c73bba0ceda4db897611a60561d16fb_D20230101-20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV81NDk3NTU4OTcyOTY_15eff37a-dfaa-410f-95c5-a0b68c821863"
      unitRef="usd">4000000</us-gaap:RestructuringCharges>
    <us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDkx_d0bb0806-ca09-4d7f-b19c-e51511e74ca7">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6" 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:9pt;font-weight:700;line-height:100%"&gt;Table 2: Summary of Changes in Restructuring Expenses Accrual&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;/tr&gt;&lt;tr&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: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:9pt;font-weight:400;line-height:100%"&gt;Severance and related benefit costs (1)&lt;/span&gt;&lt;/div&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: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:9pt;font-weight:400;line-height:100%"&gt;Other related costs (1)&lt;/span&gt;&lt;/div&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:400;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Balance at December 31, 2022&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,763&#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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"/&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,763&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Charges/(adjustments)&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:9pt;font-weight:400;line-height:100%"&gt;(100)&lt;/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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,300&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash payments&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:9pt;font-weight:400;line-height:100%"&gt;(1,673)&lt;/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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:top"/&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:9pt;font-weight:400;line-height:100%"&gt;(1,673)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Balance at March 31, 2023&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;990&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,300&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,290&#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-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt;(1) Restructuring-related liabilities are reported as part of "Other current liabilities" in the Company's unaudited consolidated balance sheets, see &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1202" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 9 - Other Balance Sheet Components&lt;/a&gt;&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; for further details.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock>
    <us-gaap:RestructuringReserve
      contextRef="if717deaca179446abbd902bdf115e444_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV8zLTEtMS0xLTE0OTIwMg_26ed67d9-fcac-4360-9442-6ca6b5770468"
      unitRef="usd">2763000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i720871c2bd5d40c0b0ba438037cad07a_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV80LTMtMS0xLTE1NjA0Ng_d1044dc5-d8c2-4e4d-9399-9147d96f8624"
      unitRef="usd">0</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV80LTUtMS0xLTE1Nzk3OA_5a637561-200a-42b1-ac91-e4468f1e8689"
      unitRef="usd">2763000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="i9c73bba0ceda4db897611a60561d16fb_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV80LTEtMS0xLTE0OTIwMg_3ec900da-a1c1-48e6-9cc7-2aa81f370a2d"
      unitRef="usd">-100000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="ie159b33e1dd44ffaa46984467578b1da_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV81LTMtMS0xLTE1NjAzNA_8b9b95d8-2d00-4e96-86c4-da6801848ece"
      unitRef="usd">1300000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:RestructuringReserveAccrualAdjustment1
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV81LTUtMS0xLTE1ODE1OQ_9282aa60-0b35-4b5f-9501-becd354f8d5f"
      unitRef="usd">1200000</us-gaap:RestructuringReserveAccrualAdjustment1>
    <us-gaap:PaymentsForRestructuring
      contextRef="i9c73bba0ceda4db897611a60561d16fb_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV81LTEtMS0xLTE0OTIwMg_cb5f7f6d-6990-4566-af4a-96b94851a5b4"
      unitRef="usd">1673000</us-gaap:PaymentsForRestructuring>
    <us-gaap:PaymentsForRestructuring
      contextRef="ie159b33e1dd44ffaa46984467578b1da_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV82LTMtMS0xLTE1NjA0Ng_b6d86310-3577-472d-91f1-4f65eebe9fc2"
      unitRef="usd">0</us-gaap:PaymentsForRestructuring>
    <us-gaap:PaymentsForRestructuring
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV82LTUtMS0xLTE1ODE2Mg_9f514cd1-bf9a-4fd4-92fa-d2436cf93be6"
      unitRef="usd">1673000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserve
      contextRef="i8ca685af3fcb40758f76074b05da2515_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV82LTEtMS0xLTE0OTIwMg_70980dd6-6fb6-4c9d-bda3-70ec325c53cb"
      unitRef="usd">990000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="iebdcd72e211c4c639503d2acfa17704a_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV84LTMtMS0xLTE1NTY1NQ_98ba266c-f647-4341-85fb-e8c02401f4d3"
      unitRef="usd">1300000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGFibGU6MDBmZTUyZjZkYjFlNGZlZGE5ZGU2MzIyMTgzMmNmMjUvdGFibGVyYW5nZTowMGZlNTJmNmRiMWU0ZmVkYTlkZTYzMjIxODMyY2YyNV84LTUtMS0xLTE1NTY1NQ_c6e38020-493e-4211-bcc2-635b7c870caf"
      unitRef="usd">2290000</us-gaap:RestructuringReserve>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTEzL2ZyYWc6NzllMzZhMjA0M2U2NGIzYjg4ZTVlMDE1MmM4MmUwNTEvdGV4dHJlZ2lvbjo3OWUzNmEyMDQzZTY0YjNiODhlNWUwMTUyYzgyZTA1MV83MTQ2ODI1NjY3NDg4_9e57d689-4b6f-4596-8d3f-8b93eb137f06">&lt;div style="margin-bottom:9pt;margin-top:10pt"&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;Recent Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;From time to time, new accounting standards are issued by the Financial Accounting Standard Board or other standard-setting bodies and are adopted by the Company as of the specified accounting date. Unless otherwise discussed, the Company believes that issued standards not yet effective will not have a material effect on its financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM1NTA_9c56caca-6556-409c-9c8c-c434f51c86d9">REVENUE RECOGNITION&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for revenue in accordance with ASC Topic 606, "Revenue from Contracts with Customers." The unit of account in ASC 606 is a performance obligation, which is a promise in a contract with a customer to transfer a good or service to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 our revenue is recognized over time, as control is transferred continuously to our customers who receive and consume benefits as we perform. Revenue transferred to customers over time accounted for 89% and 96% of our revenue for the three months ended March&#160;31, 2023 and 2022, respectively. All of our business groups earn services revenue under a variety of contract types, including time and materials, firm-fixed price, firm-fixed price level of effort, and cost-plus fixed fee contract types, which may include variable consideration.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For performance obligations in which control does not continuously transfer to the customer, we recognize revenue at the point in time in which each performance obligation is fully satisfied. This coincides with the point in time the customer obtains control of the product or service, which typically occurs upon customer acceptance or receipt of the product or service, given that we maintain control of the product or service until that point. Revenue transferred to customers at a point in time accounted for 11% and 4% of our revenue for the three months ended March&#160;31, 2023 and 2022, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Orders for the sale of software licenses may contain multiple performance obligations, such as maintenance, training, or consulting services, which are typically delivered over time, consistent with the transfer of control disclosed above for the provision of services. When an order contains multiple performance obligations, we allocate the transaction price to the performance obligations based on the standalone selling price of the product or service underlying each performance obligation. The standalone selling price represents the amount we would sell the product or service to a customer on a standalone basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For certain performance obligations where we are not primarily responsible for fulfilling the promise to provide the goods or services to the customer, do not have inventory risk and have limited discretion in establishing the price for the goods or services, we recognize revenue on a net basis.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We provide for anticipated losses on contracts during the period when the loss is determined by recording an expense for the total expected costs that exceeds the total estimated revenue for a performance obligation. No contract losses were recorded during the three months ended March&#160;31, 2023 and 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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;Disaggregated Revenues&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 to our segment reporting, as further discussed in &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_79" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 1&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_79" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;7&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_79" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; &#x2013; Segment Information&lt;/a&gt;&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;, we disaggregate our revenues by customer and contract types. We treat sales to U.S. customers as sales within the U.S. regardless of where the services are performed. Substantially most of our revenues are generated from U.S. customers, while international customers are de minimis; as such, the financial information by geographic location is not presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:45.288%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.821%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 3.1: Revenue by Customer Type&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000;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:400;line-height:100%"&gt;For the Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2022&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="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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" 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-style:italic;font-weight:400;line-height:100%"&gt;(dollars in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Federal&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;32,989&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94&#160;%&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;47,843&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;95&#160;%&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State &amp;amp; local, and commercial&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:9pt;font-weight:400;line-height:100%"&gt;2,233&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;2,317&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total revenue&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;35,222&#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 colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;50,160&#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 colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:45.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.821%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 3.2: Revenue by Contract Type&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000;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:400;line-height:100%"&gt;For the Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2022&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="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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" 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-style:italic;font-weight:400;line-height:100%"&gt;(dollars in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Firm fixed-price&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27,013&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;77&#160;%&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;41,277&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82&#160;%&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Time-and-materials&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:9pt;font-weight:400;line-height:100%"&gt;3,556&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;Cost plus fixed fee&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:9pt;font-weight:400;line-height:100%"&gt;4,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;5,967&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total revenue&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;35,222&#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="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&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 #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;50,160&#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="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 3.3: Revenue Concentration Greater than 10% of Total Revenue&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;March 31, 2022&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:9pt;font-weight:400;line-height:100%"&gt;U.S. Department of Defense ("DoD")&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68&#160;%&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;border-top:1pt solid #000000;padding:2px 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;71&#160;%&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Civilian&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26&#160;%&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 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:38.761%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.096%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" 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:9pt;font-weight:700;line-height:100%"&gt;Table 3.4: Contract Balances&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;Balance Sheet Presentation&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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="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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Billed accounts receivables &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,297&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,521&#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:9pt;font-weight:400;line-height:100%"&gt;Unbilled accounts receivable&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;font-weight:400;line-height:100%"&gt;4,658&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;11,657&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Contract assets&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:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;font-weight:400;line-height:100%"&gt;11,747&#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:9pt;font-weight:400;line-height:100%"&gt;14,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;/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:9pt;font-weight:400;line-height:100%"&gt;Contract liabilities&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Contract 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:9pt;font-weight:400;line-height:100%"&gt;7,203&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;6,444&#160;&lt;/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-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; Net of allowance for credit losses.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The significant change in the Company's contract assets and contract liabilities during the current period was primarily the result of the timing differences between the Company's performance, invoicing and customer payments. Revenue recognized for the three months ended March&#160;31, 2023 and 2022, that was included in the contract liabilities balance at the beginning of each reporting period was $2.5&#160;million and $2.5&#160;million, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 March&#160;31, 2023, we had approximately $77.4&#160;million of remaining performance obligations, which we also refer to as funded backlog. We expect to recognize approximately 70% of our remaining performance obligations as revenue in 2023, an additional 29% in 2024, and the balance thereafter.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM1NTE_e18bbdb3-05ca-4ac3-8d7e-49cd9ff924ab">&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for revenue in accordance with ASC Topic 606, "Revenue from Contracts with Customers." The unit of account in ASC 606 is a performance obligation, which is a promise in a contract with a customer to transfer a good or service to the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 our revenue is recognized over time, as control is transferred continuously to our customers who receive and consume benefits as we perform. Revenue transferred to customers over time accounted for 89% and 96% of our revenue for the three months ended March&#160;31, 2023 and 2022, respectively. All of our business groups earn services revenue under a variety of contract types, including time and materials, firm-fixed price, firm-fixed price level of effort, and cost-plus fixed fee contract types, which may include variable consideration.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For performance obligations in which control does not continuously transfer to the customer, we recognize revenue at the point in time in which each performance obligation is fully satisfied. This coincides with the point in time the customer obtains control of the product or service, which typically occurs upon customer acceptance or receipt of the product or service, given that we maintain control of the product or service until that point. Revenue transferred to customers at a point in time accounted for 11% and 4% of our revenue for the three months ended March&#160;31, 2023 and 2022, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Orders for the sale of software licenses may contain multiple performance obligations, such as maintenance, training, or consulting services, which are typically delivered over time, consistent with the transfer of control disclosed above for the provision of services. When an order contains multiple performance obligations, we allocate the transaction price to the performance obligations based on the standalone selling price of the product or service underlying each performance obligation. The standalone selling price represents the amount we would sell the product or service to a customer on a standalone basis.&lt;/span&gt;&lt;/div&gt;For certain performance obligations where we are not primarily responsible for fulfilling the promise to provide the goods or services to the customer, do not have inventory risk and have limited discretion in establishing the price for the goods or services, we recognize revenue on a net basis.We provide for anticipated losses on contracts during the period when the loss is determined by recording an expense for the total expected costs that exceeds the total estimated revenue for a performance obligation.</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ifca0b0f581ee49e1a7357bacc31497aa_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfNTQ5NzU1ODQ0OTM3_fd3aa06a-7a1a-4a09-ab0e-d8e5b2faae8b"
      unitRef="number">0.89</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ibe697fcaa3974a88af62a9b6e2464f08_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfNTQ5NzU1ODQ0OTQw_b4cbd587-6502-4a93-b009-5fb50add5d16"
      unitRef="number">0.96</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i1f97f1859ec2491ba1212df5851f3cff_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfNTQ5NzU1ODQ0OTQ1_568dca06-fcd4-4512-97c7-d858363058cc"
      unitRef="number">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i236a1e77abc54270b20a2f9b3d06de91_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfNTQ5NzU1ODQ0OTQ5_d367ff63-de29-460c-a614-7fa6167bddf2"
      unitRef="number">0.04</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM1NTM_a83c21c8-ada1-4ad6-9404-2af2ef076087">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:45.288%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.821%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 3.1: Revenue by Customer Type&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000;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:400;line-height:100%"&gt;For the Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2022&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="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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" 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-style:italic;font-weight:400;line-height:100%"&gt;(dollars in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Federal&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;32,989&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94&#160;%&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;47,843&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;95&#160;%&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;State &amp;amp; local, and commercial&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:9pt;font-weight:400;line-height:100%"&gt;2,233&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;2,317&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total revenue&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;35,222&#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 colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;50,160&#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 colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:45.427%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.821%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 3.2: Revenue by Contract Type&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="21" style="border-bottom:1pt solid #000;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:400;line-height:100%"&gt;For the Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;March 31, 2022&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="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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&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:400;line-height:100%"&gt;Amount&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:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="21" 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-style:italic;font-weight:400;line-height:100%"&gt;(dollars in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Firm fixed-price&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;27,013&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;77&#160;%&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;41,277&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;82&#160;%&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Time-and-materials&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:9pt;font-weight:400;line-height:100%"&gt;3,556&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;2,916&#160;&lt;/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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;Cost plus fixed fee&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:9pt;font-weight:400;line-height:100%"&gt;4,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;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13&#160;%&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:9pt;font-weight:400;line-height:100%"&gt;5,967&#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:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;12&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total revenue&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;35,222&#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="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&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 #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;50,160&#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="3" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 19pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;100&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2b45755bd1174610ad18f63ab70679ab_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfMy0xLTEtMS0xNDI4NDg_c06a4184-6d24-4a7e-ba39-5c1689f5f471"
      unitRef="usd">32989000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2b45755bd1174610ad18f63ab70679ab_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNi0zLTEtMS0xNDkzNTY_dd941cf2-9add-4c0f-a506-dd1a68619934"
      unitRef="number">0.94</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i894ac2be57a94485beb08a6ab8a0f872_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfMy0zLTEtMS0xNDI4NDg_5f9df8a0-ea21-42d1-ac91-d09edf5768ae"
      unitRef="usd">47843000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i81cbb57cf4684950b0de0faafa4766cf_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNi03LTEtMS0xNDkzNTY_a043018b-3117-47ae-ab61-c77a01236ef5"
      unitRef="number">0.95</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iccdb33f9c9e241dd9504e8921c2e0d4d_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNC0xLTEtMS0xNDI4NDg_01ad04e6-4c3f-45cd-b9f2-c67e9dfa6f9f"
      unitRef="usd">2233000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="iccdb33f9c9e241dd9504e8921c2e0d4d_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNy0zLTEtMS0xNDkzNTY_849dd193-b044-4570-9673-d075fc5f9690"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i83be100bc8194350bebf10e32af055f4_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNC0zLTEtMS0xNDI4NDg_a73402c1-90a7-4625-a0ba-a4a60b7794cf"
      unitRef="usd">2317000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i83be100bc8194350bebf10e32af055f4_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNy03LTEtMS0xNDkzNTY_180a9403-4d0d-4a5b-8257-bb15a39d237d"
      unitRef="number">0.05</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0d703b07fc884cf99fe6844c27e44e01_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNS0xLTEtMS0xNDI4NDg_6deb7402-8e5f-41f8-b234-2e2b303958e7"
      unitRef="usd">35222000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i0d703b07fc884cf99fe6844c27e44e01_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfOC0zLTEtMS0xNDkzNzA_872c0fcd-0664-4810-aff7-1fb221fafabb"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2f2433e9ddf44f13b4a2a92cb61dfc35_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfNS0zLTEtMS0xNDI4NDg_cd495990-d189-4ee3-9b7d-04712663b26b"
      unitRef="usd">50160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2f2433e9ddf44f13b4a2a92cb61dfc35_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjA4MDE5ODZjZDkxZjQ3OWY5MmZjYTE1ZDMwNzViZWE3L3RhYmxlcmFuZ2U6MDgwMTk4NmNkOTFmNDc5ZjkyZmNhMTVkMzA3NWJlYTdfOC03LTEtMS0xNDkzNzA_3f086e0a-db91-4e19-88e8-b58fdde0bac6"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i45b96b4fc27c408297570f1af27ca8b1_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfMy0xLTEtMS0xNDI4NDg_f4a4a418-3783-4d1a-83ce-68d16f70b663"
      unitRef="usd">27013000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i45b96b4fc27c408297570f1af27ca8b1_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNi0zLTEtMS0xNDk0NjA_bb7c3d88-9edd-46c5-abd0-771645289306"
      unitRef="number">0.77</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i076bcf486ab245818f9bbdfe3ef616a6_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfMy0zLTEtMS0xNDI4NDg_a2e29103-399b-47f1-a7d3-1699fc13efdc"
      unitRef="usd">41277000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i076bcf486ab245818f9bbdfe3ef616a6_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNi03LTEtMS0xNDk0NjA_2bf7f61b-7bff-4614-b3ed-da7a02c470a5"
      unitRef="number">0.82</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i00a55dc7a8af42a6963f343525fee42b_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNC0xLTEtMS0xNDI4NDg_c69e0c21-0b8e-4bce-bc51-e5977977bd78"
      unitRef="usd">3556000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i00a55dc7a8af42a6963f343525fee42b_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNy0zLTEtMS0xNDk0NjA_7708ed06-9a15-4f15-bb86-794836a00043"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2e1db02a4fe34c82ab9c347b69cd335c_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNC0zLTEtMS0xNDI4NDg_976e28db-4c46-4d15-a000-0781e3a8e03b"
      unitRef="usd">2916000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2e1db02a4fe34c82ab9c347b69cd335c_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNy03LTEtMS0xNDk0NjA_1847b24b-1baa-435c-86a2-92d8ee00d70f"
      unitRef="number">0.06</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i351a79dee4e344ff8363a9cfe752e5fc_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNS0xLTEtMS0xNDI4NDg_7ddda6a5-4566-4b4b-81a9-3b1bf8afee97"
      unitRef="usd">4653000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i351a79dee4e344ff8363a9cfe752e5fc_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfOC0zLTEtMS0xNDk0NjA_e42002f5-69a9-4e2c-bb7b-c3bc171fdf29"
      unitRef="number">0.13</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i647dd0efbc2044e9bf6d7915af25bd65_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfNS0zLTEtMS0xNDI4NDg_a767d2ed-258d-482e-b325-7f2e9afa89e8"
      unitRef="usd">5967000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i647dd0efbc2044e9bf6d7915af25bd65_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfOC03LTEtMS0xNDk0NjA_87d02529-e76a-481f-83ab-89bd37e69dd8"
      unitRef="number">0.12</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i0d703b07fc884cf99fe6844c27e44e01_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfMTItMS0xLTEtMTQyODQ4_8cf219d4-82a9-40e9-934e-60ffa9932f59"
      unitRef="usd">35222000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i0d703b07fc884cf99fe6844c27e44e01_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfOS0zLTEtMS0xNDk0ODE_837fb940-2c4d-4dd9-8a4a-b64ff6639b81"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i2f2433e9ddf44f13b4a2a92cb61dfc35_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfMTItMy0xLTEtMTQyODQ4_617843b3-3c61-4a75-b12c-bafe83469911"
      unitRef="usd">50160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i2f2433e9ddf44f13b4a2a92cb61dfc35_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOjY4MjA1Y2QzYWE3ZTRhMjY5ZjZjMGM0NjcyNzRhOWRjL3RhYmxlcmFuZ2U6NjgyMDVjZDNhYTdlNGEyNjlmNmMwYzQ2NzI3NGE5ZGNfOS03LTEtMS0xNDk0ODE_33898ef2-d96d-4fd2-8fe7-d05af7528d42"
      unitRef="number">1</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM1NTQ_bd520720-77ec-4686-8dd7-331ca7a7fae6">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 3.3: Revenue Concentration Greater than 10% of Total Revenue&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;March 31, 2022&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:9pt;font-weight:400;line-height:100%"&gt;U.S. Department of Defense ("DoD")&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;68&#160;%&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;border-top:1pt solid #000000;padding:2px 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;71&#160;%&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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Civilian&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;26&#160;%&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 31pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24&#160;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ia8b0e18e3b074989bddbf21fae29f1ee_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmIzNTM1ZGI5NjAxMzQxNDk4NGU3YTY5ZTUzZjA1NWE1L3RhYmxlcmFuZ2U6YjM1MzVkYjk2MDEzNDE0OTg0ZTdhNjllNTNmMDU1YTVfMi0xLTEtMS0xNDI4NDg_2bfcb723-107f-4242-96d5-f179146261ce"
      unitRef="number">0.68</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i9e3d602c0b894039aa476410489a9115_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmIzNTM1ZGI5NjAxMzQxNDk4NGU3YTY5ZTUzZjA1NWE1L3RhYmxlcmFuZ2U6YjM1MzVkYjk2MDEzNDE0OTg0ZTdhNjllNTNmMDU1YTVfMi0zLTEtMS0xNDI4NDg_d94626d1-cdf6-4f29-85fc-c146d08e1fd2"
      unitRef="number">0.71</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="icb9266a69285408e91477d2499a036b7_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmIzNTM1ZGI5NjAxMzQxNDk4NGU3YTY5ZTUzZjA1NWE1L3RhYmxlcmFuZ2U6YjM1MzVkYjk2MDEzNDE0OTg0ZTdhNjllNTNmMDU1YTVfMy0xLTEtMS0xNDI4NDg_93d1b9a9-4ecc-4361-a974-3f22940859dd"
      unitRef="number">0.26</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ibdd7697ffc374901ac8d3fc6a7f266dd_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmIzNTM1ZGI5NjAxMzQxNDk4NGU3YTY5ZTUzZjA1NWE1L3RhYmxlcmFuZ2U6YjM1MzVkYjk2MDEzNDE0OTg0ZTdhNjllNTNmMDU1YTVfMy0zLTEtMS0xNDI4NDg_e5f7d323-a792-49bc-925a-b3130cc76133"
      unitRef="number">0.24</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM1NTI_df3543d4-6888-408a-bc8a-4a9fea547130">&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:38.761%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:21.122%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.494%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.096%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" 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:9pt;font-weight:700;line-height:100%"&gt;Table 3.4: Contract Balances&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;Balance Sheet Presentation&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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="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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Billed accounts receivables &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,297&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,521&#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:9pt;font-weight:400;line-height:100%"&gt;Unbilled accounts receivable&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;font-weight:400;line-height:100%"&gt;4,658&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;11,657&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Contract assets&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:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;font-weight:400;line-height:100%"&gt;11,747&#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:9pt;font-weight:400;line-height:100%"&gt;14,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;/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:9pt;font-weight:400;line-height:100%"&gt;Contract liabilities&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;Contract 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:9pt;font-weight:400;line-height:100%"&gt;7,203&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;6,444&#160;&lt;/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;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <tls:BillContractsReceivableNetOfAllowance
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMi0zLTEtMS0xNDk3Mzk_f644440f-3bdf-4800-a7f9-fea60dc52c9b"
      unitRef="usd">18297000</tls:BillContractsReceivableNetOfAllowance>
    <tls:BillContractsReceivableNetOfAllowance
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMi01LTEtMS0xNDk3Mzk_33feb9fd-70d5-4f90-99f8-99cd4fae0c1f"
      unitRef="usd">13521000</tls:BillContractsReceivableNetOfAllowance>
    <us-gaap:UnbilledContractsReceivable
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMy0zLTEtMS0xNDk3Mzk_66a635ea-c860-4038-9225-fffbc761dcfd"
      unitRef="usd">4658000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:UnbilledContractsReceivable
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMy01LTEtMS0xNDk3Mzk_1181e07f-a0cd-4665-a8db-7dafd3c1fa1f"
      unitRef="usd">11657000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:ContractWithCustomerAssetGrossCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMS0xLTEtMS0xNDI4NDg_253f7431-c518-4b8d-8967-5b33c45b599a"
      unitRef="usd">11747000</us-gaap:ContractWithCustomerAssetGrossCurrent>
    <us-gaap:ContractWithCustomerAssetGrossCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMS0zLTEtMS0xNDI4NDg_9ffa7054-370a-485c-82b9-534ca14ae32d"
      unitRef="usd">14891000</us-gaap:ContractWithCustomerAssetGrossCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMi0xLTEtMS0xNDI4NDg_783b7eea-a4e9-4d3d-8925-dd84e3d384a0"
      unitRef="usd">7203000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RhYmxlOmUyZWM1NjM0OGM4MjQ3YWI5ZTI4MThjNjRiYjU1MDVmL3RhYmxlcmFuZ2U6ZTJlYzU2MzQ4YzgyNDdhYjllMjgxOGM2NGJiNTUwNWZfMi0zLTEtMS0xNDI4NDg_fab8cc62-5981-4b53-a7eb-e5c93002142c"
      unitRef="usd">6444000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTMyNDU_d1cebd90-85da-4eb5-93ec-21889042941f"
      unitRef="usd">2500000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTMyNTI_3f19a85f-a178-410a-ace2-ef124f4f9851"
      unitRef="usd">2500000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTMyOTQ_18087ad3-59e7-4367-b55d-a34f7e504498"
      unitRef="usd">77400000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="i0d4f624444d645d7997bf7c837749b69_I20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM0MzU_2a67b62f-aede-4528-a1ac-5ab0bc9368a7"
      unitRef="number">0.70</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="i1414e26fd59646979c27619d0de00f12_I20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8zNy9mcmFnOmQyZjgzYTI2MTk4MzQ3MmE5MDZlNWY3ZTAxODUzYmEwL3RleHRyZWdpb246ZDJmODNhMjYxOTgzNDcyYTkwNmU1ZjdlMDE4NTNiYTBfMTM1MTE_e6fb5203-66cf-4dec-bd8f-79ab20189f9a"
      unitRef="number">0.29</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:AccountsAndNontradeReceivableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RleHRyZWdpb246YzAwZTRjOTA4YjRiNDRjZGJkMDA2ODVhZmQ4ZmIyNjNfOTk_06a7c72b-d4bd-4a0a-bd56-dd02eeee9faf">ACCOUNTS RECEIVABLE, NET&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 4: Details of Accounts Receivable, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Billed accounts receivable&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,520&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,655&#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:9pt;font-weight:400;line-height:100%"&gt;Unbilled accounts receivable&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:9pt;font-weight:400;line-height:100%"&gt;4,658&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;11,657&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Contract 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:9pt;font-weight:400;line-height:100%"&gt;11,747&#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:9pt;font-weight:400;line-height:100%"&gt;14,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;/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&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Allowance for credit losses &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(223)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(134)&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;34,702&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;40,069&#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:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; Includes provision for credit losses, net of recoveries.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As our primary customer base includes agencies of the U.S. government, we have a concentration of credit risk associated with our accounts receivable, as 95% of our billed and unbilled accounts receivable as of March&#160;31, 2023 were directly with U.S. government customers. While we acknowledge the potential material and adverse risk of such a significant concentration of credit risk, our past experience collecting substantially all of such receivables provides us with an informed basis that such risk, if any, is manageable. We perform ongoing credit evaluations of all of our customers and generally do not require collateral or other guarantee from our customers. We maintain allowances for potential losses.&lt;/span&gt;&lt;/div&gt;</us-gaap:AccountsAndNontradeReceivableTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RleHRyZWdpb246YzAwZTRjOTA4YjRiNDRjZGJkMDA2ODVhZmQ4ZmIyNjNfMTAw_a5e1496c-dd69-4c0e-a12a-263b6c206e1c">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 4: Details of Accounts Receivable, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Billed accounts receivable&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,520&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;13,655&#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:9pt;font-weight:400;line-height:100%"&gt;Unbilled accounts receivable&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:9pt;font-weight:400;line-height:100%"&gt;4,658&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;11,657&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Contract 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:9pt;font-weight:400;line-height:100%"&gt;11,747&#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:9pt;font-weight:400;line-height:100%"&gt;14,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;/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&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Allowance for credit losses &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;(223)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(134)&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts receivable, net&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;34,702&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;40,069&#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:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; Includes provision for credit losses, net of recoveries.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:BilledContractReceivables
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfMS0xLTEtMS0xNDI4NDg_a25f9b57-0f83-4a07-8710-02a06d7e3063"
      unitRef="usd">18520000</us-gaap:BilledContractReceivables>
    <us-gaap:BilledContractReceivables
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfMS0zLTEtMS0xNDI4NDg_e3a68a45-ddc6-4791-989f-502f3061f3a4"
      unitRef="usd">13655000</us-gaap:BilledContractReceivables>
    <us-gaap:UnbilledContractsReceivable
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfMi0xLTEtMS0xNDI4NDg_d80b9b78-a6bb-4c05-a17b-7a04c8d70cb5"
      unitRef="usd">4658000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:UnbilledContractsReceivable
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfMi0zLTEtMS0xNDI4NDg_a70d2f98-5e23-4450-b734-5997b4d79f11"
      unitRef="usd">11657000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:ContractWithCustomerAssetGrossCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfNi0xLTEtMS0xNDk4NTc_a37ab0a4-df77-4c31-818d-96243627b92f"
      unitRef="usd">11747000</us-gaap:ContractWithCustomerAssetGrossCurrent>
    <us-gaap:ContractWithCustomerAssetGrossCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfNi0zLTEtMS0xNDk4NTc_9f272972-3eb7-4c59-ba40-79c605dbc05a"
      unitRef="usd">14891000</us-gaap:ContractWithCustomerAssetGrossCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfMy0xLTEtMS0xNDI4NDg_8833a19b-4121-493d-8273-7953587d16d9"
      unitRef="usd">223000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfMy0zLTEtMS0xNDI4NDg_fed4f048-a447-48f8-9eee-d7c0d51b71bd"
      unitRef="usd">134000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfNC0xLTEtMS0xNDI4NDg_4b9ab7fa-13ee-4680-b31a-d746ee3eb73f"
      unitRef="usd">34702000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RhYmxlOmJlZDUxMGU4ZjI2ZDQ4ODQ5ZTljZjMwODNmYTBjODM1L3RhYmxlcmFuZ2U6YmVkNTEwZThmMjZkNDg4NDllOWNmMzA4M2ZhMGM4MzVfNC0zLTEtMS0xNDI4NDg_5fc71916-5cbb-4ea8-ac39-49cd86fa772e"
      unitRef="usd">40069000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i741f7c613c4140488d72d5fc40550ff3_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80My9mcmFnOmMwMGU0YzkwOGI0YjQ0Y2RiZDAwNjg1YWZkOGZiMjYzL3RleHRyZWdpb246YzAwZTRjOTA4YjRiNDRjZGJkMDA2ODVhZmQ4ZmIyNjNfNTQ5NzU1ODE0MjM1_4fe7c550-e46a-4c40-b394-a93c3a8f696f"
      unitRef="number">0.95</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGV4dHJlZ2lvbjoyZjg5NzI4NmI0MGY0NGIwODQ3MDEzYmViNjRmZTU1YV8yNzQ4Nzc5MDY5NDY4_e579d7fc-24f1-4758-afc6-185017ec6ad7">INVENTORIES, NET&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 5: Details of Inventories, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Gross inventory&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,394&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,642&#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:9pt;font-weight:400;line-height:100%"&gt;Allowance for inventory obsolescence&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:9pt;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="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:9pt;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,629&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,877&#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;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGV4dHJlZ2lvbjoyZjg5NzI4NmI0MGY0NGIwODQ3MDEzYmViNjRmZTU1YV8yNzQ4Nzc5MDY5NDY5_01a8efd4-88d0-474d-b26d-b9f424b65e2e">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 5: Details of Inventories, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Gross inventory&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,394&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,642&#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:9pt;font-weight:400;line-height:100%"&gt;Allowance for inventory obsolescence&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:9pt;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="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:9pt;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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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 #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,629&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,877&#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;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryGross
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGFibGU6OTZiYzQyN2RkN2Y2NDYzZDhiY2M2N2FjOWY0MzZkMzMvdGFibGVyYW5nZTo5NmJjNDI3ZGQ3ZjY0NjNkOGJjYzY3YWM5ZjQzNmQzM180LTEtMS0xLTE0OTk3Nw_c380249a-738a-4acf-ac8b-0a84044fa36f"
      unitRef="usd">2394000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGFibGU6OTZiYzQyN2RkN2Y2NDYzZDhiY2M2N2FjOWY0MzZkMzMvdGFibGVyYW5nZTo5NmJjNDI3ZGQ3ZjY0NjNkOGJjYzY3YWM5ZjQzNmQzM180LTMtMS0xLTE0OTk3Nw_8554d201-54ec-4ae3-84c4-fa61a9ffe135"
      unitRef="usd">3642000</us-gaap:InventoryGross>
    <us-gaap:InventoryValuationReserves
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGFibGU6OTZiYzQyN2RkN2Y2NDYzZDhiY2M2N2FjOWY0MzZkMzMvdGFibGVyYW5nZTo5NmJjNDI3ZGQ3ZjY0NjNkOGJjYzY3YWM5ZjQzNmQzM181LTEtMS0xLTE0OTk3Nw_6c0ea99b-a5d4-41ee-8e16-b8e22a5950f2"
      unitRef="usd">765000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryValuationReserves
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGFibGU6OTZiYzQyN2RkN2Y2NDYzZDhiY2M2N2FjOWY0MzZkMzMvdGFibGVyYW5nZTo5NmJjNDI3ZGQ3ZjY0NjNkOGJjYzY3YWM5ZjQzNmQzM181LTMtMS0xLTE0OTk3Nw_701930b9-8b2c-4e5b-9357-21a4442a3f04"
      unitRef="usd">765000</us-gaap:InventoryValuationReserves>
    <us-gaap:InventoryNet
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGFibGU6OTZiYzQyN2RkN2Y2NDYzZDhiY2M2N2FjOWY0MzZkMzMvdGFibGVyYW5nZTo5NmJjNDI3ZGQ3ZjY0NjNkOGJjYzY3YWM5ZjQzNmQzM182LTEtMS0xLTE0OTk5MQ_be1e1639-bb08-42c3-89b0-6f467c4faf2d"
      unitRef="usd">1629000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTgxL2ZyYWc6MmY4OTcyODZiNDBmNDRiMDg0NzAxM2JlYjY0ZmU1NWEvdGFibGU6OTZiYzQyN2RkN2Y2NDYzZDhiY2M2N2FjOWY0MzZkMzMvdGFibGVyYW5nZTo5NmJjNDI3ZGQ3ZjY0NjNkOGJjYzY3YWM5ZjQzNmQzM182LTMtMS0xLTE0OTk5MQ_0c7c23b7-e4d4-4e0e-a624-1017be2ca738"
      unitRef="usd">2877000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGV4dHJlZ2lvbjo0ZDhlNTgyZTlkYjY0MWJmYjU4MTFiZTkxM2FjMTZjY18yNzQ4Nzc5MDY5NzMw_c1c216db-1168-4220-88f7-2541af3629f0">PROPERTY AND EQUIPMENT, NET&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 6: Details of Property and Equipment, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Furniture 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,104&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,033&#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:9pt;font-weight:400;line-height:100%"&gt;Leasehold improvement&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:9pt;font-weight:400;line-height:100%"&gt;3,171&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3,145&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property and equipment, at cost&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:9pt;font-weight:400;line-height:100%"&gt;19,275&#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:9pt;font-weight:400;line-height:100%"&gt;19,178&#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:9pt;font-weight:400;line-height:100%"&gt;Accumulated 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:9pt;font-weight:400;line-height:100%"&gt;(14,869)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(14,391)&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,406&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,787&#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:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation and amortization expense was $0.6&#160;million for both three months ended March&#160;31, 2023 and 2022, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGV4dHJlZ2lvbjo0ZDhlNTgyZTlkYjY0MWJmYjU4MTFiZTkxM2FjMTZjY18yNzQ4Nzc5MDY5NzMx_2b2995c3-a954-4890-8c31-74f5e9e0f36e">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 6: Details of Property and Equipment, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Furniture 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,104&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;16,033&#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:9pt;font-weight:400;line-height:100%"&gt;Leasehold improvement&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:9pt;font-weight:400;line-height:100%"&gt;3,171&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3,145&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property and equipment, at cost&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:9pt;font-weight:400;line-height:100%"&gt;19,275&#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:9pt;font-weight:400;line-height:100%"&gt;19,178&#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:9pt;font-weight:400;line-height:100%"&gt;Accumulated 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:9pt;font-weight:400;line-height:100%"&gt;(14,869)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(14,391)&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Property and equipment, net&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,406&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,787&#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;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="id80f6cae1c6741efb8d1d19ebbc269d1_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF80LTEtMS0xLTE1MDA2Ng_687511cc-7d79-46a5-baf4-0169a07e812e"
      unitRef="usd">16104000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i6a09eca591884af28329740283132ba8_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF80LTMtMS0xLTE1MDA2Ng_4e2831e6-28c3-4546-b5e1-4a676d679002"
      unitRef="usd">16033000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i27fdbc1582434a9ebb9d543987b28b7c_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF81LTEtMS0xLTE1MDA2Ng_a1e2a029-328e-48fe-ac9a-8baef2b35643"
      unitRef="usd">3171000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ic7cefa3ef7f3464c9cdd9d689ad67f6d_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF81LTMtMS0xLTE1MDA2Ng_02dcb6dd-b823-49e2-9ce0-2ce191d4228e"
      unitRef="usd">3145000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF82LTEtMS0xLTE1NzkwOQ_15a89c91-07b3-499d-b257-10a7aa222fce"
      unitRef="usd">19275000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF82LTMtMS0xLTE1NzkxMw_dbc5b19f-2d8d-4914-8ab9-8fa8354fdd8d"
      unitRef="usd">19178000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF83LTEtMS0xLTE1MDA3NA_e9c46fdf-08db-4cf9-8ce7-ad6aa6354eaa"
      unitRef="usd">14869000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF83LTMtMS0xLTE1MDA3NA_1c98e5aa-ac41-4d33-8b52-585279dfe6b8"
      unitRef="usd">14391000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF84LTEtMS0xLTE1MDA4MA_367e029c-8812-4a29-8d64-037ba8e14f1b"
      unitRef="usd">4406000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGFibGU6NGY3NjdkYzcwNDAzNGMyYmFjNDljYTgwMTZjOTUwZjQvdGFibGVyYW5nZTo0Zjc2N2RjNzA0MDM0YzJiYWM0OWNhODAxNmM5NTBmNF84LTMtMS0xLTE1MDA4MA_b2668864-c908-47cb-bf7f-e00b40370c4a"
      unitRef="usd">4787000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGV4dHJlZ2lvbjo0ZDhlNTgyZTlkYjY0MWJmYjU4MTFiZTkxM2FjMTZjY181NDk3NTU4MTQxNTg_56efcdcd-6942-44cd-a0ff-85ac7a88cbe3"
      unitRef="usd">600000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTkxL2ZyYWc6NGQ4ZTU4MmU5ZGI2NDFiZmI1ODExYmU5MTNhYzE2Y2MvdGV4dHJlZ2lvbjo0ZDhlNTgyZTlkYjY0MWJmYjU4MTFiZTkxM2FjMTZjY181NDk3NTU4MTQxNTg_7e64fb4b-6599-4c7f-a478-fd3d114f37bc"
      unitRef="usd">600000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:GoodwillDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfMzgy_097beb90-86cb-4e55-8d9b-a2093ade6f02">GOODWILLThe goodwill balance was $17.9&#160;million as of March&#160;31, 2023, and December&#160;31, 2022, of which $3.0&#160;million is allocated to the Security Solutions segment and $14.9&#160;million is allocated to the Secure Networks segment. Goodwill is subject to annual impairment tests and if triggering events are present in the interim before the annual tests, we will assess impairment. No impairment charges were recorded for the three months ended March 31, 2023 and 2022</us-gaap:GoodwillDisclosureTextBlock>
    <us-gaap:Goodwill
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfNDg_a08abd54-14be-481c-b01f-b53404a44e73"
      unitRef="usd">17900000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfNDg_b98cefd4-7c6b-411e-8751-59b80df47edb"
      unitRef="usd">17900000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i74a91f06db6e4c9989a38bf9c4c5e5ad_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfNzc_772fdbcc-a6e0-44b7-8aff-eb9306464aa4"
      unitRef="usd">3000000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ideb494925c0a41ac927d4546c63c9c65_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfNzc_a004e144-7b0e-4309-a79b-dfb98e23d612"
      unitRef="usd">3000000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="ifdb3b7aeed554d19b3dcdc27797812ad_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfMTMx_427c46e3-fb7e-457a-bd67-4a795ec668cd"
      unitRef="usd">14900000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="i73441995244c4a48944e8eaa5f9b63b9_I20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfMTMx_7f81a81c-0a23-4c34-af83-6dbd3f37f5dc"
      unitRef="usd">14900000</us-gaap:Goodwill>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfMzUw_c447ac3d-6c5a-4e63-885f-ad7b4360a66e"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80OS9mcmFnOjc0YmRjNjczMmU4YTQ4OGY5YTVlMGFiN2M4ZTcxMzllL3RleHRyZWdpb246NzRiZGM2NzMyZThhNDg4ZjlhNWUwYWI3YzhlNzEzOWVfMzUw_d8471695-da19-464f-a35e-162b02307258"
      unitRef="usd">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:IntangibleAssetsDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfMzIx_68b3e90f-52d9-4fa1-ab6c-9869e968ac06">INTANGIBLE ASSETS, NET&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:25.150%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.047%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="39" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 8: Details of Intangible Assets, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;March&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;December&#160;31, 2022&lt;/span&gt;&lt;/div&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:8pt;font-weight:400;line-height:100%"&gt;Estimated Useful Life&lt;/span&gt;&lt;/td&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:8pt;font-weight:400;line-height:100%"&gt;Gross Carrying Amount&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:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&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:8pt;font-weight:400;line-height:100%"&gt;Net Carrying Value&lt;/span&gt;&lt;/td&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:8pt;font-weight:400;line-height:100%"&gt;Gross Carrying Amount&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:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&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:8pt;font-weight:400;line-height:100%"&gt;Net Carrying Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="33" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Acquired technology&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:9pt;font-weight:400;line-height:100%"&gt;8&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,630&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(756)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,874&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,630&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(643)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,987&#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:9pt;font-weight:400;line-height:100%"&gt;Customer relationship&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;3&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:9pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(22)&lt;/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:9pt;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;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:9pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(19)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;21&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Software development costs&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:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2 - 5&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;39,005&#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:9pt;font-weight:400;line-height:100%"&gt;(8,096)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;30,909&#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:9pt;font-weight:400;line-height:100%"&gt;35,080&#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:9pt;font-weight:400;line-height:100%"&gt;(7,793)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;27,287&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Subtotal&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:9pt;font-weight:400;line-height:100%"&gt;42,675&#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:9pt;font-weight:400;line-height:100%"&gt;(8,874)&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:9pt;font-weight:400;line-height:100%"&gt;33,801&#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:9pt;font-weight:400;line-height:100%"&gt;38,750&#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:9pt;font-weight:400;line-height:100%"&gt;(8,455)&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:9pt;font-weight:400;line-height:100%"&gt;30,295&#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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Software held for resale &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,120&#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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,120&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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 #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;42,675&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,874)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;33,801&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;45,870&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,455)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;37,415&#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-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; This amount is net of $0.6&#160;million charged into cost for sales for the period ended December 31, 2022. See &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1212" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 10 &lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1212" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&#x2013;&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1212" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; Debt and Other Obligations&lt;/a&gt;&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; for related details. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense related to capitalized software development costs was $0.3&#160;million for both three months ended March&#160;31, 2023 and 2022.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortization expense related to other intangible assets was $0.1&#160;million for both three months ended March&#160;31, 2023 and 2022.&lt;/span&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfMzIy_3f4fe2c9-1a3f-4031-8c71-82e6c6503a39">&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:25.150%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.047%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="39" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 8: Details of Intangible Assets, Net&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;March&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000;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:9pt;font-weight:400;line-height:100%"&gt;December&#160;31, 2022&lt;/span&gt;&lt;/div&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:8pt;font-weight:400;line-height:100%"&gt;Estimated Useful Life&lt;/span&gt;&lt;/td&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:8pt;font-weight:400;line-height:100%"&gt;Gross Carrying Amount&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:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&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:8pt;font-weight:400;line-height:100%"&gt;Net Carrying Value&lt;/span&gt;&lt;/td&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:8pt;font-weight:400;line-height:100%"&gt;Gross Carrying Amount&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:8pt;font-weight:400;line-height:100%"&gt;Accumulated Amortization&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:8pt;font-weight:400;line-height:100%"&gt;Net Carrying Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="33" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Acquired technology&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:9pt;font-weight:400;line-height:100%"&gt;8&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,630&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(756)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,874&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,630&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(643)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;2,987&#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:9pt;font-weight:400;line-height:100%"&gt;Customer relationship&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;3&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:9pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(22)&lt;/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:9pt;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;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:9pt;font-weight:400;line-height:100%"&gt;40&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(19)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;21&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Software development costs&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:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2 - 5&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;39,005&#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:9pt;font-weight:400;line-height:100%"&gt;(8,096)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;30,909&#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:9pt;font-weight:400;line-height:100%"&gt;35,080&#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:9pt;font-weight:400;line-height:100%"&gt;(7,793)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;27,287&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Subtotal&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:9pt;font-weight:400;line-height:100%"&gt;42,675&#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:9pt;font-weight:400;line-height:100%"&gt;(8,874)&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:9pt;font-weight:400;line-height:100%"&gt;33,801&#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:9pt;font-weight:400;line-height:100%"&gt;38,750&#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:9pt;font-weight:400;line-height:100%"&gt;(8,455)&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:9pt;font-weight:400;line-height:100%"&gt;30,295&#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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Software held for resale &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;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:9pt;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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,120&#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:9pt;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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;7,120&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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 #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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;42,675&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,874)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;33,801&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;45,870&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(8,455)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;37,415&#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;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; This amount is net of $0.6&#160;million charged into cost for sales for the period ended December 31, 2022. See &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1212" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 10 &lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1212" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&#x2013;&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_1212" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; Debt and Other Obligations&lt;/a&gt;&lt;/span&gt; for related details.</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i64c52c461f3446718fed3eb81aec3301_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS0xLTEtMS0xNTAyOTk_655f29b6-f8bb-42c7-9b5d-7637b066dd3d">P8Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i5bad6a7e251e4d2680fab61a75533eaf_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMi0xLTEtMS0xNDI4NDg_b430008c-6115-4dd5-94c4-74dfd78152db"
      unitRef="usd">3630000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i5bad6a7e251e4d2680fab61a75533eaf_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMi0zLTEtMS0xNDI4NDg_51f5b278-0c2f-427c-8aad-a2ee8c8e530b"
      unitRef="usd">756000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i5bad6a7e251e4d2680fab61a75533eaf_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMi01LTEtMS0xNDI4NDg_fa8e2641-4f29-44cd-b14c-b5267a5c48a8"
      unitRef="usd">2874000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="ia30001a9335a4c44a0702dacfb768074_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMi03LTEtMS0xNDI4NDg_ac2735d8-0a9c-4999-9225-a04a5720c9d9"
      unitRef="usd">3630000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="ia30001a9335a4c44a0702dacfb768074_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMi05LTEtMS0xNDI4NDg_a985994d-3dc2-4a35-86ee-998526ddaf67"
      unitRef="usd">643000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="ia30001a9335a4c44a0702dacfb768074_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMi0xMS0xLTEtMTQyODQ4_4073c3c9-d2a8-4722-baa1-bd2ac4274e93"
      unitRef="usd">2987000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i07d960d49d954228828c43a95cfddbcc_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNi0xLTEtMS0xNTAyOTk_97379d82-ccf8-4640-88a8-ba5d7d35b808">P3Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i4e2d2cdfb5654faba9b1992bae2a0a3f_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMy0xLTEtMS0xNDI4NDg_520d3ba9-8be4-41bb-a76a-3d3b267d8501"
      unitRef="usd">40000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i4e2d2cdfb5654faba9b1992bae2a0a3f_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMy0zLTEtMS0xNDI4NDg_624d99dd-6887-490f-b2a3-4be495b8e431"
      unitRef="usd">22000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i4e2d2cdfb5654faba9b1992bae2a0a3f_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMy01LTEtMS0xNDI4NDg_88e5d780-393f-4cdd-b615-891cc9d99412"
      unitRef="usd">18000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="id35c9701965d46b9973f99496dd9e29b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMy03LTEtMS0xNDI4NDg_d5b71300-23e4-4936-9fc2-292005a70c7d"
      unitRef="usd">40000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="id35c9701965d46b9973f99496dd9e29b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMy05LTEtMS0xNDI4NDg_568816c9-187a-4fd3-a146-38eec89462ee"
      unitRef="usd">19000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="id35c9701965d46b9973f99496dd9e29b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfMy0xMS0xLTEtMTQyODQ4_f1f126dc-860e-4a7f-b56b-b7d42016b42b"
      unitRef="usd">21000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="ib5e7d9af3aeb458293056d049509d530_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNy0xLTEtMS0xNTAzMDYvdGV4dHJlZ2lvbjpjNjdlMmIwZDdiYTA0MGQ0OTJlZDUxYzU2MDA3ZjY5N181NDk3NTU4MTM4OTg_3bfdc7ea-6abb-469a-a600-f609c87dae5c">P2Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="i31ca871623044e738df24128d1ec9684_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNy0xLTEtMS0xNTAzMDYvdGV4dHJlZ2lvbjpjNjdlMmIwZDdiYTA0MGQ0OTJlZDUxYzU2MDA3ZjY5N181NDk3NTU4MTM5MDI_deadb43b-28e1-4694-867d-96c652ae8878">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i4df4b223016743a0bb7cecf009ea1745_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNC0xLTEtMS0xNDI4NDg_c42b6496-adcf-46ba-9770-63c8ea23eda9"
      unitRef="usd">39005000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i4df4b223016743a0bb7cecf009ea1745_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNC0zLTEtMS0xNDI4NDg_5c30989f-cefb-4c58-a69c-769aa6ff7e28"
      unitRef="usd">8096000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i4df4b223016743a0bb7cecf009ea1745_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNC01LTEtMS0xNDI4NDg_9b027c00-9425-4ac8-a252-fb2a71e56aae"
      unitRef="usd">30909000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i140b99a27e1a4d7daf832bec98ff988e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNC03LTEtMS0xNDI4NDg_b4abfa36-5332-4d1b-a6e2-cf9fb9e0da8b"
      unitRef="usd">35080000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i140b99a27e1a4d7daf832bec98ff988e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNC05LTEtMS0xNDI4NDg_38e4252f-0ddf-4815-9600-9827abb3aadd"
      unitRef="usd">7793000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i140b99a27e1a4d7daf832bec98ff988e_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNC0xMS0xLTEtMTQyODQ4_5ffa81cd-2d08-4ff0-8a54-1061c79f9287"
      unitRef="usd">27287000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOC0yLTEtMS0xNTc5NTk_95a9441f-64f3-46fc-9045-5d7a5bff87c5"
      unitRef="usd">42675000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOC00LTEtMS0xNTc5NTk_e7ffca01-55d7-4283-b049-dec6860cbaab"
      unitRef="usd">8874000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOC02LTEtMS0xNTc5NTc_49383cbc-4ad4-458d-9e60-f04573244d02"
      unitRef="usd">33801000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOC04LTEtMS0xNTc5NTk_5d92fe4d-446b-4809-aef9-3a76b5fc9bfa"
      unitRef="usd">38750000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOC0xMC0xLTEtMTU3OTU5_ee641c88-b0ae-4526-a594-95597377b7a1"
      unitRef="usd">8455000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOC0xMi0xLTEtMTU3OTU5_1158cd5f-3f79-43f1-8716-b08ffb0c1973"
      unitRef="usd">30295000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i5165c2970533434e9ff16e0facbf9478_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOS0yLTEtMS0xNTAzMTk_dca19f1e-6991-4902-ba66-52e16ca0c6bd"
      unitRef="usd">0</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i5165c2970533434e9ff16e0facbf9478_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOS02LTEtMS0xNTc5NjU_9d491421-ea2f-468a-b5ca-b16dd8e9fc75"
      unitRef="usd">0</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i6c02372d68074b6ebda693d27201c0d1_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOS04LTEtMS0xNTc5NjU_96e89ca5-0217-49d6-a5a2-b355936b083b"
      unitRef="usd">7120000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill
      contextRef="i6c02372d68074b6ebda693d27201c0d1_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfOS0xMi0xLTEtMTU3OTY1_0fffc251-624c-4b16-a7ca-e05028b8605e"
      unitRef="usd">7120000</us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS0xLTEtMS0xNDI4NDg_bc1c04f2-da79-4b95-998e-013e382de829"
      unitRef="usd">42675000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS0zLTEtMS0xNDI4NDg_3a05c49d-60f0-434a-a9bf-cc41d7d83cd9"
      unitRef="usd">8874000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS01LTEtMS0xNDI4NDg_fba130c0-e3ab-46f4-ae11-3300a9bbb59c"
      unitRef="usd">33801000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS03LTEtMS0xNDI4NDg_134c73a6-1008-4d87-9c02-628158bbc437"
      unitRef="usd">45870000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS05LTEtMS0xNDI4NDg_02cb979e-241e-4644-a8d7-84c8f23ad8f7"
      unitRef="usd">8455000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RhYmxlOmY2MmU3ZTQwOWI0ZDQ4MDFhY2RhMmY4M2VlNzk2MDQ0L3RhYmxlcmFuZ2U6ZjYyZTdlNDA5YjRkNDgwMWFjZGEyZjgzZWU3OTYwNDRfNS0xMS0xLTEtMTQyODQ4_99c473db-8f2a-4790-a439-f919c0413709"
      unitRef="usd">37415000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="id986812ce4f943dea5d3e579c5406ac0_D20220101-20221231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfNTQ5NzU1ODE1MTUw_93bebe8e-a691-40ab-9360-54bf0fd14bd5"
      unitRef="usd">600000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i3eac0eb298d34e7bb1d220dbb3ecbad6_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfNTQ5NzU1ODE1MDc0_4324f81e-bbdf-4fda-81d6-568cecce8a19"
      unitRef="usd">300000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i2c2969309ba44cabb7f57ee33a359643_D20230101-20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfNTQ5NzU1ODE1MDc0_7a992e1a-d5c6-4d55-9eeb-f09fb01a347a"
      unitRef="usd">300000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i7840752e96324a56a0885c025fac3313_D20230101-20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfNTQ5NzU1ODE1MDk0_433d5813-cd9c-4f57-b65e-2aab62a7ad35"
      unitRef="usd">100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="i11b58c786ea74c4297560643278bcd60_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl81Mi9mcmFnOjhiYmU3OGVkODkzNjQ5ZWY5ZmU2Yjg0YTNlY2JjODg4L3RleHRyZWdpb246OGJiZTc4ZWQ4OTM2NDllZjlmZTZiODRhM2VjYmM4ODhfNTQ5NzU1ODE1MDk0_721f53ca-520a-4a23-b41a-6d60bfb1ed93"
      unitRef="usd">100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGV4dHJlZ2lvbjo3Mjc1MThjY2E5NTA0ZGRlOWViZDI2YWQ1YmQyYzA2MF8zMjk4NTM0ODgzMzk4_df3d64ad-8153-4139-a413-ef084bd66359">OTHER BALANCE SHEET COMPONENTS&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 9.1: Details of Accounts Payable and Other Accrued Liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Accounts payable&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;11,683&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,606&#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:9pt;font-weight:400;line-height:100%"&gt;Accrued payables&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:9pt;font-weight:400;line-height:100%"&gt;6,328&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;9,945&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts payable and other accrued liabilities&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,011&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;22,551&#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:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 9.2: Details of Other Current Liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Other accrued expenses&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;874&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,530&#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:9pt;font-weight:400;line-height:100%"&gt;Restructuring expenses accrual&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:9pt;font-weight:400;line-height:100%"&gt;2,290&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,763&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;692&#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:9pt;font-weight:400;line-height:100%"&gt;626&#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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other current 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,856&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,919&#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:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGV4dHJlZ2lvbjo3Mjc1MThjY2E5NTA0ZGRlOWViZDI2YWQ1YmQyYzA2MF8zMjk4NTM0ODgzMzk5_7ad0111b-7877-4f5c-9904-e103b3d20025">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 9.1: Details of Accounts Payable and Other Accrued Liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Accounts payable&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;11,683&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,606&#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:9pt;font-weight:400;line-height:100%"&gt;Accrued payables&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:9pt;font-weight:400;line-height:100%"&gt;6,328&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;9,945&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accounts payable and other accrued liabilities&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;18,011&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;22,551&#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;</us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock>
    <us-gaap:AccountsPayableCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6MjAxZjBkY2JkZDVlNGUzZjhiMDViNTg3NmRmNjNiMzgvdGFibGVyYW5nZToyMDFmMGRjYmRkNWU0ZTNmOGIwNWI1ODc2ZGY2M2IzOF80LTEtMS0xLTE1Mzg5Mg_fc235475-1824-43c2-ae5f-06497d84a470"
      unitRef="usd">11683000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6MjAxZjBkY2JkZDVlNGUzZjhiMDViNTg3NmRmNjNiMzgvdGFibGVyYW5nZToyMDFmMGRjYmRkNWU0ZTNmOGIwNWI1ODc2ZGY2M2IzOF80LTMtMS0xLTE1Mzg5Mg_227f3a3f-19d4-4005-b2c7-cbaf7187d2b0"
      unitRef="usd">12606000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6MjAxZjBkY2JkZDVlNGUzZjhiMDViNTg3NmRmNjNiMzgvdGFibGVyYW5nZToyMDFmMGRjYmRkNWU0ZTNmOGIwNWI1ODc2ZGY2M2IzOF81LTEtMS0xLTE1Mzg5Mg_d157d91f-71e6-46a2-b689-bba28e897f91"
      unitRef="usd">6328000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6MjAxZjBkY2JkZDVlNGUzZjhiMDViNTg3NmRmNjNiMzgvdGFibGVyYW5nZToyMDFmMGRjYmRkNWU0ZTNmOGIwNWI1ODc2ZGY2M2IzOF81LTMtMS0xLTE1Mzg5Mg_12d2e6c7-fc89-4838-859b-24ddbced13a4"
      unitRef="usd">9945000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6MjAxZjBkY2JkZDVlNGUzZjhiMDViNTg3NmRmNjNiMzgvdGFibGVyYW5nZToyMDFmMGRjYmRkNWU0ZTNmOGIwNWI1ODc2ZGY2M2IzOF82LTEtMS0xLTE1MzkwNQ_0a12accf-b5a7-4e8c-a067-17cdf4dbd760"
      unitRef="usd">18011000</us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6MjAxZjBkY2JkZDVlNGUzZjhiMDViNTg3NmRmNjNiMzgvdGFibGVyYW5nZToyMDFmMGRjYmRkNWU0ZTNmOGIwNWI1ODc2ZGY2M2IzOF82LTMtMS0xLTE1MzkwNQ_3e995468-ea53-4ecc-97e2-1880dbedca19"
      unitRef="usd">22551000</us-gaap:AccountsPayableAndOtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherCurrentLiabilitiesTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGV4dHJlZ2lvbjo3Mjc1MThjY2E5NTA0ZGRlOWViZDI2YWQ1YmQyYzA2MF8zMjk4NTM0ODgzNDAw_acd74a7e-0cbf-4c98-b0ae-b98c96cfc514">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 9.2: Details of Other Current Liabilities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Other accrued expenses&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;874&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,530&#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:9pt;font-weight:400;line-height:100%"&gt;Restructuring expenses accrual&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:9pt;font-weight:400;line-height:100%"&gt;2,290&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;2,763&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;692&#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:9pt;font-weight:400;line-height:100%"&gt;626&#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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other current 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;3,856&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;4,919&#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;</us-gaap:OtherCurrentLiabilitiesTableTextBlock>
    <tls:OtherAccruedExpensesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl80LTEtMS0xLTE1MzkyOQ_05a1cc1e-05a6-492e-b880-45d85b219dc9"
      unitRef="usd">874000</tls:OtherAccruedExpensesCurrent>
    <tls:OtherAccruedExpensesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl80LTMtMS0xLTE1MzkyOQ_11266283-dd93-4899-88f8-a51340974d63"
      unitRef="usd">1530000</tls:OtherAccruedExpensesCurrent>
    <us-gaap:RestructuringReserveCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl81LTEtMS0xLTE1NzQ5NQ_595c9d66-e364-4e05-adaf-57a4a17e9fee"
      unitRef="usd">2290000</us-gaap:RestructuringReserveCurrent>
    <us-gaap:RestructuringReserveCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl81LTMtMS0xLTE1NzQ5NQ_e4c07f51-0f1a-4aa2-a26e-87fd105e8d96"
      unitRef="usd">2763000</us-gaap:RestructuringReserveCurrent>
    <tls:OtherCurrentLiabilitiesOther
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl82LTEtMS0xLTE1MzkyOQ_06a9e155-2ca0-4cbe-be97-f34d37beb6f1"
      unitRef="usd">692000</tls:OtherCurrentLiabilitiesOther>
    <tls:OtherCurrentLiabilitiesOther
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl82LTMtMS0xLTE1MzkyOQ_e9cb8c54-6101-4a03-8a4f-5e48bffbbf5f"
      unitRef="usd">626000</tls:OtherCurrentLiabilitiesOther>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl83LTEtMS0xLTE1Mzk0Mg_778b05df-078c-490f-983f-f460fe12de55"
      unitRef="usd">3856000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjAyL2ZyYWc6NzI3NTE4Y2NhOTUwNGRkZTllYmQyNmFkNWJkMmMwNjAvdGFibGU6NjFhMmNjNzQzMDkyNGFlMjljYmMzYmY1OWE3MjY2ZGIvdGFibGVyYW5nZTo2MWEyY2M3NDMwOTI0YWUyOWNiYzNiZjU5YTcyNjZkYl83LTMtMS0xLTE1Mzk0Mg_669728a8-deab-40f3-b680-f3c87c44021d"
      unitRef="usd">4919000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV84Nzk2MDkzMDMzMDI5_b602e7eb-e625-4718-957f-ec67a63d97d6">DEBT AND OTHER OBLIGATIONS&lt;div style="margin-bottom:9pt;margin-top:6pt;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;Revolving Credit Facility&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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&#160;30, 2022 (the "Closing Date"), we entered into a Credit Agreement (the "Credit Agreement"), by and among the Company, as borrower, Xacta Corporation, ubIQuity.com. inc, Teloworks, Inc., and Telos Identity Management Solutions, LLC, as guarantors, the lenders' party thereto (the "Lenders"), and JPMorgan Chase Bank N.A., as administrative agent for the Lenders (in such capacity, the "Agent"). The Credit Agreement provides for a $30.0 million senior secured revolving credit facility with a maturity date of December&#160;30, 2025, with the option of issuing letters of credit thereunder with a sub-limit of $5.0 million, and with an uncommitted expansion feature of up to $30.0 million of additional revolver capacity (the "Loan"). The Loan is subject to acceleration in the event of customary events of default. The Company has not drawn any amount under the Loan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Borrowings under the Credit Agreement will accrue interest, at our option, at one of three variable rates, plus a specified margin. We can elect to borrow at (i) the Alternative Base Rate, plus 0.9%; (ii) Adjusted Daily Simple Secured Overnight Financing Rate ("SOFR"), plus 1.9%; and (iii) Adjusted Term SOFR, plus 1.9%, as such capitalized terms are defined and calculated in the Credit Agreement. The Company may elect to convert borrowings from one type of borrowing to another type per the terms of the Credit Agreement. After the occurrence and during the continuance of any event of default, the interest rate may increase by an additional 2.0%. We are obligated to pay accrued interest (i) with respect to amounts accruing interest based on the Alternative Base Rate, each calendar quarter and on the maturity date, (ii) with respect to amounts accruing interest based on Adjusted Daily Simple SOFR, on each one-month anniversary of the borrowing and on the maturity date, and (iii) with respect to amounts accruing interest based on Adjusted Term SOFR, at the end of the period specified per the Credit Agreement and on the maturity date. Upon five, three, or one day's prior notice, as applicable, we may prepay any portion or the entire amount of the Loan. We also paid costs and customary fees, including a closing fee, commitment fees and letter of credit participation fee, if any, payable to the Agent and Lenders, as applicable, in connection with the Loan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Loan under the Credit Agreement is collateralized by substantially all of the Company's assets, including the Company's pledge of its domestic and material foreign subsidiary equity interests.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Loan has various covenants that may, among other things, affect our ability to create, incur, assume or suffer any indebtedness, merge into or consolidate with another entity, acquire entity interests, sell or transfer certain assets, enter into certain arrangements (such as sale and leaseback and swap agreements) or restrictive agreements, pay dividends and make certain restricted payments, and amend material documents related to any subordinated indebtedness and corporate agreements. The Credit Agreement also requires certain financial covenants to maintain a Senior Leverage Ratio on the last day of any fiscal quarter, no greater than 3 to 1. We were in compliance with all covenants as of March&#160;31, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The occurrence of an event of default under the Credit Agreement could result in the Loan and other obligations becoming immediately due and payable and allow the Lenders to exercise all rights and remedies available to them under the Credit Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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&#160;12, 2023, the Credit Agreement was amended to exclude from collateral the (i) amount collectible from a third party related to an Accounts Receivable Purchase Agreement and (ii) receivables generated by the Company from the sale of goods supplied to this third party in an amount not to exceed $25.0 million.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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;Other Financing Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We entered into a Master Purchase Agreement ("MPA") with a third-party buyer ("Buyer") for $9.1&#160;million relating to software licenses under a specific delivery order ("DO") with our customer resulting in proceeds from other financing obligations of $9.1&#160;million in November 2022. Under the MPA, we sold, assigned and transferred all of our rights, title and interest in (i) the DO payments from the customer and (ii) the underlying licenses. The DO covers a base period with an option for the customer to exercise three (3) additional 12-month periods through January 2026. The DO payments assigned to the Buyer are billable to the customer at the beginning of the base period and for each option year exercised. The underlying licenses were acquired for resale, see &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_52" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Note 8 &#x2013; Intangible Assets&lt;/a&gt;&lt;a href="#i7101b497d9ef444bbf264e4e3f219a5f_52" style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;, net&lt;/a&gt;&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 further details.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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&#160;9, 2023, the customer notified us that it would not exercise the first option period under the DO. The MPA provides that, if the customer terminates the DO for non-renewal and the Buyer reasonably concludes that the customer's actions constitute grounds for filing a claim with the customer's contracting officer, Buyer and Telos will cooperate in preparing such a claim, which would be filed in Telos' name. Buyer has notified Telos of its intent to pursue a claim against the customer.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Concurrently, the Company transferred all the rights, title and interest in the underlying licenses in exchange for the extinguishment of the outstanding financing obligations. The Company evaluated the transfer of the underlying licenses as consideration paid for the outstanding financing obligations under ASC 470-10, &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;Debt&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;, and the provisions of the MPA, and concluded that the transaction resulted in an extinguishment of debt. The Company recorded the difference between the carrying value of the Company's debt instrument and the underlying licenses as a gain on early extinguishment of other financing obligations. During the three months ended March 31, 2023, the Company reported a gain of $1.4 million, which was recorded as "Other income" in the unaudited consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ib87e8229440246b28743eef745a81a79_I20221230"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkxNDY_62c6a470-1de6-4896-9257-0919a09c9c11"
      unitRef="usd">30000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i7f9ae7b98d654f6cae438f279a45d206_I20221230"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkxODU_c32a02c8-3ed8-41fe-9190-e1e35daae3ba"
      unitRef="usd">5000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <tls:LineOfCreditFacilityAccordionFeatureHigherBorrowingCapacityOption
      contextRef="i7f9ae7b98d654f6cae438f279a45d206_I20221230"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkyMDA_d734be52-38ce-4b85-98f4-c01ebcc6231c"
      unitRef="usd">30000000</tls:LineOfCreditFacilityAccordionFeatureHigherBorrowingCapacityOption>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="ib078f7a4de7649a4b130d50faada6014_D20221230-20221230"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkyNjc_3ee08248-bce8-4274-97ee-2a4982af0101"
      unitRef="number">0.009</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i65a3dd9ea8fd42299c9f2cdacc850132_D20221230-20221230"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkyNzQ_1879c4f0-cf6b-47a7-a20e-33fa0b077bee"
      unitRef="number">0.019</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i8f5f5c5685654defb15b7d48f0e86919_D20221230-20221230"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkyODE_0008ee68-3e5c-471c-9a21-8c9649ebb4b7"
      unitRef="number">0.019</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <tls:DebtInstrumentIncrementalIncreaseInInterestRateDueToDefault
      contextRef="ib87e8229440246b28743eef745a81a79_I20221230"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkyODg_94d93ea6-8268-40d0-b197-c47d723ccbae"
      unitRef="number">0.020</tls:DebtInstrumentIncrementalIncreaseInInterestRateDueToDefault>
    <tls:DebtInstrumentCovenantSeniorLeverageRatioMaximum
      contextRef="ied24386bcc604a6e93bc2bcee62f13e7_I20221230"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkyOTU_048ca070-594c-43df-a84c-1c583e603ae3"
      unitRef="number">3</tls:DebtInstrumentCovenantSeniorLeverageRatioMaximum>
    <us-gaap:AdditionalCollateralAggregateFairValue
      contextRef="ib2593c047fe64f83a2f9edb82f0e9f07_I20230412"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4Mjc3OTg_e8ea574a-0219-407d-bf94-f01169e085b0"
      unitRef="usd">25000000</us-gaap:AdditionalCollateralAggregateFairValue>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration
      contextRef="i28f7edb3e79b44a5abfbcf7ea524470a_I20221130"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkzMDQ_2fd7e5e7-7788-4633-a1b5-a81e8239c6b0"
      unitRef="usd">9100000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration
      contextRef="i28f7edb3e79b44a5abfbcf7ea524470a_I20221130"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkzMTk_2fd7e5e7-7788-4633-a1b5-a81e8239c6b0"
      unitRef="usd">9100000</us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration>
    <tls:SoftwareLicenseDeliveryOrderNumberOfExercisableExtensionOptions
      contextRef="i0638c413e8144102928332ccf09dbc41_D20220801-20220831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkzMzQ_c2662d32-8391-49a5-925f-e30423665389"
      unitRef="extension_option">3</tls:SoftwareLicenseDeliveryOrderNumberOfExercisableExtensionOptions>
    <tls:SoftwareLicenseDeliveryOrderNumberOfExercisableExtensionOptions
      contextRef="i0638c413e8144102928332ccf09dbc41_D20220801-20220831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4MTkzNDY_c2662d32-8391-49a5-925f-e30423665389"
      unitRef="extension_option">3</tls:SoftwareLicenseDeliveryOrderNumberOfExercisableExtensionOptions>
    <tls:SoftwareLicenseDeliveryOrderPeriodOfExercisableExtensionOptions
      contextRef="iad2517b5ef2a4b27a45ac3f4252d49eb_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV8xNjQ5MjY3NDU1NjI0_cb5f378f-e9c2-4553-84d7-3266a3f2386c">P12M</tls:SoftwareLicenseDeliveryOrderPeriodOfExercisableExtensionOptions>
    <us-gaap:OtherIncome
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjEyL2ZyYWc6ZTBjMGEzODY4NTYzNGFhZGI4MjY4YTM3ZTA5NzIyNmEvdGV4dHJlZ2lvbjplMGMwYTM4Njg1NjM0YWFkYjgyNjhhMzdlMDk3MjI2YV81NDk3NTU4Mjc4MDU_53f70940-72db-42d2-b26d-18c172b169e4"
      unitRef="usd">1400000</us-gaap:OtherIncome>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfMTQ4Mg_afcf607f-0c9f-4afb-a5d8-cd0b9be9a1a5">ACQUISITIONOn July&#160;30, 2021, the Company acquired the assets of Diamond Fortress Technologies ("DFT") and wholly-owned subsidiaries for a total purchase consideration of $6.7&#160;million, inclusive of $0.3&#160;million related to a pre-existing contractual arrangement with DFT. Upon closing, $5.9&#160;million of cash was paid with an additional $0.6&#160;million payable to DFT 18 months after the close date (the "holdback"). The holdback amount has been discounted to its present value of $0.5&#160;million using a discount rate relevant to the acquisition. On February&#160;2, 2023, the Company paid DFT the holdback amount of $0.6&#160;million.</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="i2ce9e27f66fa4db8b4659e50d2e6ee3f_D20210730-20210730"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfMTQ2_bffb01c5-7988-4d03-85bd-aa9fb0f5d3d1"
      unitRef="usd">6700000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCosts
      contextRef="icbd34c61f85d448da33b4f4ac2c8a3d2_I20210730"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfMTYz_9c592871-fd1a-48e4-9845-3bec09d75a06"
      unitRef="usd">300000</us-gaap:BusinessCombinationSeparatelyRecognizedTransactionsAdditionalDisclosuresAcquisitionCosts>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="i2ce9e27f66fa4db8b4659e50d2e6ee3f_D20210730-20210730"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfMjQw_45cdc632-3270-4660-a2d4-4b257e44d146"
      unitRef="usd">5900000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="i2ce9e27f66fa4db8b4659e50d2e6ee3f_D20210730-20210730"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfMjc5_7298cdaa-f04b-4543-8b47-5d340756f0be"
      unitRef="usd">600000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <tls:BusinessCombinationConsiderationTransferredLiabilitiesIncurredCashHoldbackPeriod
      contextRef="i2ce9e27f66fa4db8b4659e50d2e6ee3f_D20210730-20210730"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfMjk3_a58d2069-f796-4c51-a991-52f20df2092a">P18M</tls:BusinessCombinationConsiderationTransferredLiabilitiesIncurredCashHoldbackPeriod>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="icbd34c61f85d448da33b4f4ac2c8a3d2_I20210730"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfNDAz_2114bf4c-76ef-430e-a28d-69adfa462a7f"
      unitRef="usd">500000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:BusinessCombinationContingentConsiderationLiability
      contextRef="ie8c4d65eb7574446a0a8f3b383552967_I20230202"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl80Ni9mcmFnOmY5YjMxMDZiYmQ0MjQ2Njk4NjhlMDEzOGUzNzMyN2QyL3RleHRyZWdpb246ZjliMzEwNmJiZDQyNDY2OTg2OGUwMTM4ZTM3MzI3ZDJfNTQ5NzU1ODE2MDYx_77fd8774-4d23-471f-a47b-db98eebb75b8"
      unitRef="usd">600000</us-gaap:BusinessCombinationContingentConsiderationLiability>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfNDgxMg_0670e9b3-d3e2-4f05-abf4-46c254a9823d">STOCK-BASED COMPENSATION&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 stock-based compensation awards under the 2016 Omnibus Long-Term Incentive Plan, as amended (the "2016 LTIP"). We may grant restricted stock awards ("RSA"), restricted stock units with time-based vesting ("RSUs") and PSUs. Awards granted under the 2016 LTIP vest over the periods determined by the Board of Directors or the Compensation Committee of the Board of Directors, which has the discretion to establish the terms, conditions and criteria of the various awards. The RSUs granted to eligible employees generally vest in installments over a period of up to &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfMjc0ODc3OTA4NzQ0NA_691ff034-a9b9-4773-918f-88c314b238d7"&gt;three&lt;/span&gt; years. PSUs will vest upon the achievement of a defined performance target or market conditions for the Company's common stock, certain operational milestones over prescribed period, or at the end of the defined performance period from the date of grant.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 income tax benefits recognized on the share-based compensation expense for both periods.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&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:9pt;font-weight:700;line-height:100%"&gt;Table 12.1: Details of Stock Compensation Expense by Department&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2023&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:120%"&gt;Cost of sales &#x2013; services&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;326&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,007&#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:9pt;font-weight:400;line-height:120%"&gt;Sales and marketing&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:9pt;font-weight:400;line-height:100%"&gt;58&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,668&#160;&lt;/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:9pt;font-weight:400;line-height:120%"&gt;Research and development&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:9pt;font-weight:400;line-height:100%"&gt;770&#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:9pt;font-weight:400;line-height:100%"&gt;1,295&#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:9pt;font-weight:400;line-height:120%"&gt;General and administrative&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:9pt;font-weight:400;line-height:100%"&gt;8,345&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;11,961&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Total&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,499&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;15,931&#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:6pt"&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:45.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.821%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" 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:9pt;font-weight:700;line-height:100%"&gt;Table 12.2: Restricted Stock Activity&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;Service-Based&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:400;line-height:100%"&gt;Performance-Based&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:400;line-height:100%"&gt;Total Shares&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:400;line-height:100%"&gt;Weighted-Average Grant Date Fair Value&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:9pt;font-weight:400;line-height:100%"&gt;Unvested outstanding units as of December 31, 2022&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:9pt;font-weight:400;line-height:100%"&gt;3,570,082&#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:9pt;font-weight:400;line-height:100%"&gt;336,785&#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:9pt;font-weight:400;line-height:100%"&gt;3,906,867&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19.53&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;205,540&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;205,540&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3.87&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,535,288)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,535,288)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;26.71&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(370,807)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(71,177)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(441,984)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;14.66&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Unvested outstanding units as of March 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;1,869,527&#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 colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;265,608&#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 colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;2,135,135&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;14.67&#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="margin-bottom:9pt;margin-top:6pt"&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 March&#160;31, 2023, the intrinsic value of the RSUs and PSUs outstanding, exercisable, and vested or expected to vest was $5.4&#160;million. There was approximately $15.2&#160;million of total compensation costs related to stock-based awards not yet recognized as of March&#160;31, 2023, which is expected to be recognized on a straight-line basis over a weighted-average remaining vesting period of 0.9 years.&lt;/span&gt;&lt;/div&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfNDgxMA_3743eb54-0c11-4868-920f-f94998bb119d">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 income tax benefits recognized on the share-based compensation expense for both periods.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&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:9pt;font-weight:700;line-height:100%"&gt;Table 12.1: Details of Stock Compensation Expense by Department&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2023&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:120%"&gt;Cost of sales &#x2013; services&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;326&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,007&#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:9pt;font-weight:400;line-height:120%"&gt;Sales and marketing&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:9pt;font-weight:400;line-height:100%"&gt;58&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,668&#160;&lt;/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:9pt;font-weight:400;line-height:120%"&gt;Research and development&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:9pt;font-weight:400;line-height:100%"&gt;770&#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:9pt;font-weight:400;line-height:100%"&gt;1,295&#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:9pt;font-weight:400;line-height:120%"&gt;General and administrative&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:9pt;font-weight:400;line-height:100%"&gt;8,345&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;11,961&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Total&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;9,499&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;15,931&#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:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i5d4354c8e5cd4e4aa75801ffcf5410bf_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfMi0xLTEtMS0xNDI4NDg_47a7c427-d371-4149-995a-84514de14cac"
      unitRef="usd">326000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i38255714054a44589ea28e90a71e66a7_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfMi0zLTEtMS0xNDI4NDg_e4c46135-593e-4ccd-89bf-fc231b003b28"
      unitRef="usd">1007000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i001c853cb7714af592f89c0905a10da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfMy0xLTEtMS0xNDI4NDg_267443e0-7916-4285-b7ca-64b4e032c3bd"
      unitRef="usd">58000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i67971e192a494a629d7f6151aa3b63de_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfMy0zLTEtMS0xNDI4NDg_b8610171-f63c-43b1-9ce4-4925eccaff29"
      unitRef="usd">1668000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i95ffa7d7787e48e1b93673e665a3a62e_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfNC0xLTEtMS0xNDI4NDg_294d4bdb-4b04-4336-aa0a-7b037f831cc1"
      unitRef="usd">770000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="ia5fe26952ac44da8bbb6a7ab32b12ee5_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfNC0zLTEtMS0xNDI4NDg_33cbd672-21d6-4d63-bc9c-2f6ab1ba30ec"
      unitRef="usd">1295000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i69691d099fa649cbb02315fd607ac0fa_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfNS0xLTEtMS0xNDI4NDg_5054dd36-9b3d-4176-b53b-a4bb47e8d4ea"
      unitRef="usd">8345000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1c1726c7aa2f4d8687439416699e5c29_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfNS0zLTEtMS0xNDI4NDg_cdc2900d-139a-4119-8207-52e412454fd0"
      unitRef="usd">11961000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfNi0xLTEtMS0xNDI4NDg_428c97ec-8c36-4703-9ab8-9140bf9f6236"
      unitRef="usd">9499000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjcyYmFjMDJkYzBjNDQ0MzRiNTc3N2ZkZDE4YmVlZTFiL3RhYmxlcmFuZ2U6NzJiYWMwMmRjMGM0NDQzNGI1Nzc3ZmRkMThiZWVlMWJfNi0zLTEtMS0xNDI4NDg_4cd3043d-90d5-4eac-93d3-11fa35880f56"
      unitRef="usd">15931000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfNDgxMQ_fb0b72b0-7153-47e4-97fc-98da330a2993">&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:45.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.821%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="24" 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:9pt;font-weight:700;line-height:100%"&gt;Table 12.2: Restricted Stock Activity&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;Service-Based&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:400;line-height:100%"&gt;Performance-Based&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:400;line-height:100%"&gt;Total Shares&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:400;line-height:100%"&gt;Weighted-Average Grant Date Fair Value&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:9pt;font-weight:400;line-height:100%"&gt;Unvested outstanding units as of December 31, 2022&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:9pt;font-weight:400;line-height:100%"&gt;3,570,082&#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:9pt;font-weight:400;line-height:100%"&gt;336,785&#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:9pt;font-weight:400;line-height:100%"&gt;3,906,867&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19.53&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;205,540&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;205,540&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;3.87&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Vested&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:9pt;font-weight:400;line-height:100%"&gt;(1,535,288)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,535,288)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;26.71&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(370,807)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(71,177)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(441,984)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;14.66&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Unvested outstanding units as of March 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;1,869,527&#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 colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;265,608&#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 colspan="2" style="background-color:#cceeff;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:9pt;font-weight:400;line-height:100%"&gt;2,135,135&#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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;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:9pt;font-weight:400;line-height:100%"&gt;14.67&#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;</us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="ib5d449c1c26a497fa45a179059829845_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfMy0xLTEtMS0xNDI4NDg_970dfe58-7131-4f71-8f4c-bc81c610e68f"
      unitRef="shares">3570082</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i6ef9ef53f1ff44d1ac8083dc3f5850b3_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfMy0zLTEtMS0xNDI4NDg_cb2d5f0b-bd2b-4389-a193-db7f79db493c"
      unitRef="shares">336785</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfMy01LTEtMS0xNDI4NDg_0510a5f0-ab8b-4823-8dde-3692fec0ab3d"
      unitRef="shares">3906867</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfMy03LTEtMS0xNDI4NDg_c16e83fc-342e-45ad-b4e6-f4190669c50b"
      unitRef="usdPerShare">19.53</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ib27c7b8516a3445c8db4abb3498ea8f5_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNC0xLTEtMS0xNDI4NDg_73628fbc-b890-4186-9341-2d71eb08bb1c"
      unitRef="shares">205540</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i5d3f779c46494dcc80db9e00fbddbd33_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNC0zLTEtMS0xNDI4NDg_5a3eb327-2119-4c6d-8477-44c145ea4737"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNC01LTEtMS0xNDI4NDg_5a5f2efc-aed2-4f93-8891-85cd40bc33c8"
      unitRef="shares">205540</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNC03LTEtMS0xNDI4NDg_02369e79-c3d1-46e6-8ecb-e7d1026a5684"
      unitRef="usdPerShare">3.87</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ib27c7b8516a3445c8db4abb3498ea8f5_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNS0xLTEtMS0xNDI4NDg_31444419-8f72-46e7-b2b3-850ad26ea7d7"
      unitRef="shares">1535288</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i5d3f779c46494dcc80db9e00fbddbd33_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNS0zLTEtMS0xNDI4NDg_dd6c7d4e-a7cb-41d8-aabb-3d79d341e7eb"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNS01LTEtMS0xNDI4NDg_17d8e7ca-9ef2-4963-b15e-efc89ec1ec11"
      unitRef="shares">1535288</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNS03LTEtMS0xNDI4NDg_0e9a91d4-18f8-4d37-bd35-6c27a360bfc0"
      unitRef="usdPerShare">26.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="ib27c7b8516a3445c8db4abb3498ea8f5_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNi0xLTEtMS0xNDI4NDg_cfe0f5b6-0240-4786-bd83-08337eaf77b7"
      unitRef="shares">370807</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i5d3f779c46494dcc80db9e00fbddbd33_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNi0zLTEtMS0xNDI4NDg_7771e3a8-485b-460b-aa7f-3953e43926bf"
      unitRef="shares">71177</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNi01LTEtMS0xNDI4NDg_005ffd52-bb4d-4f66-88dc-a03746907dee"
      unitRef="shares">441984</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNi03LTEtMS0xNDI4NDg_b072ecbc-bd0b-4363-aa7f-61bed080b81d"
      unitRef="usdPerShare">14.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i738bc738d52947a4b39a9dc36558a071_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNy0xLTEtMS0xNDI4NDg_30b63a1c-0b8a-4432-acdd-34f0e59231c4"
      unitRef="shares">1869527</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="i7225f51e7ca24f7aac2439b6a156ae79_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNy0zLTEtMS0xNDI4NDg_1cfb94e8-fb04-4686-a86b-025c431540d7"
      unitRef="shares">265608</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNy01LTEtMS0xNDI4NDg_7c60562b-b082-4a03-9b6d-b69a248eceee"
      unitRef="shares">2135135</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RhYmxlOjk3OTAxMGMyMzA0NTRiZTY5YWJjZDA0YzI0ZDRkM2YzL3RhYmxlcmFuZ2U6OTc5MDEwYzIzMDQ1NGJlNjlhYmNkMDRjMjRkNGQzZjNfNy03LTEtMS0xNDI4NDg_5ec46797-ee95-4e4f-926f-6ba33e7f6328"
      unitRef="usdPerShare">14.67</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfNTQ5NzU1ODMxMTQ4_ae61f57b-fb20-4236-a523-907eb75e0ea6"
      unitRef="usd">5400000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i7225f51e7ca24f7aac2439b6a156ae79_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfNDU5NA_e5583d5a-43d4-476f-b6ff-ced770f8de93"
      unitRef="usd">15200000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i5d3f779c46494dcc80db9e00fbddbd33_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83My9mcmFnOjA5YWRjZDg5OWFhZjRjN2M4MmNkNzRmMjcxOTkxYWJiL3RleHRyZWdpb246MDlhZGNkODk5YWFmNGM3YzgyY2Q3NGYyNzE5OTFhYmJfNDc4MA_1d67a861-eeaa-4a80-a0a8-4d928a872caa">P0Y10M24D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:TreasuryStockTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjMyL2ZyYWc6ZTk2YTRhNzA5ZjkyNDEwYmE1Y2QxZWQ0OTVmODU0MTUvdGV4dHJlZ2lvbjplOTZhNGE3MDlmOTI0MTBiYTVjZDFlZDQ5NWY4NTQxNV8xMDQ0NTM2MDQ2NDk3OQ_806953db-69ca-4667-b38b-d4bfc4951fc1">SHARE REPURCHASES&lt;div style="margin-bottom:9pt;margin-top:6pt"&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&#160;24, 2022, the Company announced that the Board of Directors approved a new share repurchase program ("SRP") authorizing the Company to repurchase up to $50.0&#160;million of its common stock. Pursuant to this authorization, the Company may repurchase shares of its common stock on a discretionary basis from time to time through open market purchases. The repurchase program has no expiration date and may be modified, suspended, or terminated at any time.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 share purchases during the first quarter of 2023 and 2022. As of March&#160;31, 2023, there was approximately $38.7&#160;million of the authorization remaining for future common stock repurchases under the SRP.&lt;/span&gt;&lt;/div&gt;</us-gaap:TreasuryStockTextBlock>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="i24764e58b20d4a84a62782e3f4a5ed63_I20220524"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjMyL2ZyYWc6ZTk2YTRhNzA5ZjkyNDEwYmE1Y2QxZWQ0OTVmODU0MTUvdGV4dHJlZ2lvbjplOTZhNGE3MDlmOTI0MTBiYTVjZDFlZDQ5NWY4NTQxNV81NDk3NTU4MTQ5NDc_095c75bd-120d-4cdd-a8f9-67da7de20b7c"
      unitRef="usd">50000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMjMyL2ZyYWc6ZTk2YTRhNzA5ZjkyNDEwYmE1Y2QxZWQ0OTVmODU0MTUvdGV4dHJlZ2lvbjplOTZhNGE3MDlmOTI0MTBiYTVjZDFlZDQ5NWY4NTQxNV81NDk3NTU4MTQ5NzE_756d8364-525d-4013-8aee-70012f2ead32"
      unitRef="usd">38700000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <us-gaap:ComprehensiveIncomeNoteTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGV4dHJlZ2lvbjowYTRjYjBiNzhiNDQ0NTM5YjUwZThkZWE2YWM4OWM4ZF8xMDQ0NTM2MDQ2NDkyMw_88349c87-0ec7-4210-a3a4-9d182c966dd4">ACCUMULATED OTHER COMPREHENSIVE LOSSOur functional currency is the U.S. Dollar. For one of our wholly-owned subsidiaries, the functional currency is the local currency. For this subsidiary, the translation of its foreign currency into U.S. Dollars is performed for assets and liabilities using current foreign currency exchange rates in effect at the balance sheet date and for revenue and expense accounts using average foreign currency exchange rates during the periods presented. Translation gains and losses are included in stockholders&#x2019; equity as a component of accumulated other comprehensive loss.&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 14: Details of Accumulated Other Comprehensive Loss&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cumulative foreign currency translation loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(149)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(162)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative actuarial gain on pension liability adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#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:9pt;font-weight:400;line-height:100%"&gt;Accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;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 #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:9pt;font-weight:400;line-height:100%"&gt;(42)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;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 #000000;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:9pt;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 #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:9pt;font-weight:400;line-height:100%"&gt;(55)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ComprehensiveIncomeNoteTextBlock>
    <us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGV4dHJlZ2lvbjowYTRjYjBiNzhiNDQ0NTM5YjUwZThkZWE2YWM4OWM4ZF8xMDQ0NTM2MDQ2NDkyNA_211236f9-e7d6-411a-b30b-c0054a05828b">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 14: Details of Accumulated Other Comprehensive Loss&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cumulative foreign currency translation loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(149)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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;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:9pt;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(162)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cumulative actuarial gain on pension liability adjustment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;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:#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:9pt;font-weight:400;line-height:100%"&gt;Accumulated other comprehensive loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;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:9pt;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 #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:9pt;font-weight:400;line-height:100%"&gt;(42)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;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 #000000;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:9pt;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 #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:9pt;font-weight:400;line-height:100%"&gt;(55)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock>
    <us-gaap:StockholdersEquity
      contextRef="i6a5738fbce604aa3a740211907dd5008_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGFibGU6MjIzMmQ1OGY2NzQ2NDc0ZjgxYzNhY2JlZGJlMjg4ODQvdGFibGVyYW5nZToyMjMyZDU4ZjY3NDY0NzRmODFjM2FjYmVkYmUyODg4NF8xLTEtMS0xLTE0Mzk4Mg_06355d88-9150-42fa-82a3-6ce220834b4d"
      unitRef="usd">-149000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia36f2d3991984d3eb14781ef51a7f38f_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGFibGU6MjIzMmQ1OGY2NzQ2NDc0ZjgxYzNhY2JlZGJlMjg4ODQvdGFibGVyYW5nZToyMjMyZDU4ZjY3NDY0NzRmODFjM2FjYmVkYmUyODg4NF8xLTMtMS0xLTE0Mzk4Mg_ae331bde-4184-49d3-935f-6f7fe476b77e"
      unitRef="usd">-162000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i798ac6ce8677424abf55b86fe0973df4_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGFibGU6MjIzMmQ1OGY2NzQ2NDc0ZjgxYzNhY2JlZGJlMjg4ODQvdGFibGVyYW5nZToyMjMyZDU4ZjY3NDY0NzRmODFjM2FjYmVkYmUyODg4NF8yLTEtMS0xLTE0Mzk4Mg_24cebe4f-1143-4378-a738-95dca0a8adfa"
      unitRef="usd">-107000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia977579bb0c14e55930fb6f10bfd13f0_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGFibGU6MjIzMmQ1OGY2NzQ2NDc0ZjgxYzNhY2JlZGJlMjg4ODQvdGFibGVyYW5nZToyMjMyZDU4ZjY3NDY0NzRmODFjM2FjYmVkYmUyODg4NF8yLTMtMS0xLTE0Mzk4Mg_c99583aa-0c2b-4f71-8b04-4b71bc4ca7e9"
      unitRef="usd">-107000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i677e17bf93124a84a28565bdbfc05322_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGFibGU6MjIzMmQ1OGY2NzQ2NDc0ZjgxYzNhY2JlZGJlMjg4ODQvdGFibGVyYW5nZToyMjMyZDU4ZjY3NDY0NzRmODFjM2FjYmVkYmUyODg4NF8zLTEtMS0xLTE0Mzk4Mg_1206d468-3019-4fa7-9bb7-2f0fee157020"
      unitRef="usd">-42000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i33627c0ef89c46089aed7e465bb4f1be_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTUyL2ZyYWc6MGE0Y2IwYjc4YjQ0NDUzOWI1MGU4ZGVhNmFjODljOGQvdGFibGU6MjIzMmQ1OGY2NzQ2NDc0ZjgxYzNhY2JlZGJlMjg4ODQvdGFibGVyYW5nZToyMjMyZDU4ZjY3NDY0NzRmODFjM2FjYmVkYmUyODg4NF8zLTMtMS0xLTE0Mzk4Mg_60d45da9-2a65-4114-b6d9-0d0e3df9e363"
      unitRef="usd">-55000</us-gaap:StockholdersEquity>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGV4dHJlZ2lvbjo1ZjJmMjdkZDNkZWQ0YWQzYWYzM2U4NjMwYWJhNGIyZF8yNzQ4Nzc5MDczNTMz_954c89c3-911d-4813-b14b-4b267ef13cfc">LOSS PER SHARE&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 period of net loss, potentially dilutive securities are not included in the calculation of diluted net earnings (loss) per share, because to do so would be anti-dilutive.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 15: Potentially Dilutive Securities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Unvested restricted stock and restricted stock units&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:9pt;font-weight:400;line-height:100%"&gt;410&#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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:9pt;font-weight:400;line-height:100%"&gt;410&#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:9pt;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 #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:6pt"&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 three months ended March&#160;31, 2023 and 2022, PSUs in the amount of 265,608 and 439,786, respectively, have been excluded from the calculation of potentially dilutive securities above because the issuance of shares is contingent upon the satisfaction of certain conditions which were not satisfied by the end of the period.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGV4dHJlZ2lvbjo1ZjJmMjdkZDNkZWQ0YWQzYWYzM2U4NjMwYWJhNGIyZF8yNzQ4Nzc5MDczNTM0_27726f8c-6fad-4bb4-8539-0553ca9a397f">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 15: Potentially Dilutive Securities&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Unvested restricted stock and restricted stock units&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:9pt;font-weight:400;line-height:100%"&gt;410&#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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total&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:9pt;font-weight:400;line-height:100%"&gt;410&#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:9pt;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 #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="if14c24d55da147c1a5482af9ca910b4e_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGFibGU6ZTY4YzM5NDE5NjJhNDAyZTlkNWM2MjYxN2NjMDFiYjUvdGFibGVyYW5nZTplNjhjMzk0MTk2MmE0MDJlOWQ1YzYyNjE3Y2MwMWJiNV8yLTEtMS0xLTE0Mzk2NQ_28966a2e-2fa3-4ba0-928a-8af9351d0746"
      unitRef="shares">410000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ia82d81b8d21743ba9692f116801f3255_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGFibGU6ZTY4YzM5NDE5NjJhNDAyZTlkNWM2MjYxN2NjMDFiYjUvdGFibGVyYW5nZTplNjhjMzk0MTk2MmE0MDJlOWQ1YzYyNjE3Y2MwMWJiNV8yLTMtMS0xLTE0Mzk2NQ_b43b4d4b-734a-46a2-99ca-7be75161facf"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGFibGU6ZTY4YzM5NDE5NjJhNDAyZTlkNWM2MjYxN2NjMDFiYjUvdGFibGVyYW5nZTplNjhjMzk0MTk2MmE0MDJlOWQ1YzYyNjE3Y2MwMWJiNV80LTEtMS0xLTE0Mzk2NQ_4e73f501-e580-4154-aebe-d464660d1ee7"
      unitRef="shares">410000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGFibGU6ZTY4YzM5NDE5NjJhNDAyZTlkNWM2MjYxN2NjMDFiYjUvdGFibGVyYW5nZTplNjhjMzk0MTk2MmE0MDJlOWQ1YzYyNjE3Y2MwMWJiNV80LTMtMS0xLTE0Mzk2NQ_1f3f3744-72e1-4f1e-a39b-bed83437d702"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <tls:IncrementalCommonSharesExcludedFromTheDilutiveEffect
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGV4dHJlZ2lvbjo1ZjJmMjdkZDNkZWQ0YWQzYWYzM2U4NjMwYWJhNGIyZF81NDk3NTU4MTc5MzU_3d96015c-5c28-42ee-890e-a23006424039"
      unitRef="shares">265608</tls:IncrementalCommonSharesExcludedFromTheDilutiveEffect>
    <tls:IncrementalCommonSharesExcludedFromTheDilutiveEffect
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTQwL2ZyYWc6NWYyZjI3ZGQzZGVkNGFkM2FmMzNlODYzMGFiYTRiMmQvdGV4dHJlZ2lvbjo1ZjJmMjdkZDNkZWQ0YWQzYWYzM2U4NjMwYWJhNGIyZF81NDk3NTU4MTc5NDk_9be12bea-ef9e-47f9-8d9b-815942610cef"
      unitRef="shares">439786</tls:IncrementalCommonSharesExcludedFromTheDilutiveEffect>
    <us-gaap:RelatedPartyTransactionsDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMTAwMw_adebf963-52b6-4d27-ab75-f0cd8f929a9b">RELATED PARTY TRANSACTIONS&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Emmett J. Wood, the brother of our Chairman and CEO, had been an employee of the Company since 1996. The amounts paid to him as compensation were $249,000 and $512,000 for the three months ended March 31, 2023 and 2022, respectively. Additionally, Mr. Wood owned 199,785 and 178,041 shares of the Company&#x2019;s common stock as of March&#160;31, 2023 and December&#160;31, 2022, respectively. In January 2023, he tendered his resignation as an employee effective February 7, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;One of the Company&#x2019;s directors serves as a consultant to the Company. On January 1, 2023, the director and the Company amended the consulting agreement under which he provides services ("2023 consulting agreement"), extending his services through June 30, 2023, with the option to further extend for another six months by mutual agreement of the parties. The Company, at its election, would pay the director's 2023 consultancy fees in a fixed amount, in the form of restricted stock units. On January&#160;3, 2023, the Company granted the director 16,859 RSUs for his consulting services, one-half of which vested on March&#160;3, 2023, and the other half vesting on or about May&#160;18, 2023, subject to the director's continued performance under the 2023 consulting agreement. During the three months ended March 31, 2022, the Company paid $25,000, and granted him 26,091 RSUs on February&#160;1, 2022, for his consulting services in 2022, which RSUs vested quarterly in four equal amounts through the end of the year.&lt;/span&gt;&lt;/div&gt;</us-gaap:RelatedPartyTransactionsDisclosureTextBlock>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="ie8c0ba0745d04e23b48bdb01de41db55_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMjAw_53619d3b-7fb9-4848-b928-7b1ef31b3b52"
      unitRef="usd">249000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="i7cc45858de334ce9993e7de6b11a9890_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMjA3_73a581e0-e9fc-4bcd-b483-cd9473db3dfe"
      unitRef="usd">512000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <tls:NumberOfSharesHeldByRelatedParty
      contextRef="i2dd4cfa0bba743f59b4d3aebd8a02d8d_I20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMjcy_a7fe58e3-2591-4dd4-8291-6d766d26bfb2"
      unitRef="shares">199785</tls:NumberOfSharesHeldByRelatedParty>
    <tls:NumberOfSharesHeldByRelatedParty
      contextRef="i6c001a9a10f147248ac65415c20b8dd3_I20221231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMjc5_a0df1da4-458c-403b-9aaf-5cbaa47343aa"
      unitRef="shares">178041</tls:NumberOfSharesHeldByRelatedParty>
    <tls:ConsultingServicesContractOptionToExtendPeriod
      contextRef="i087f7143e52848fb9de3444786cc41b4_D20230103-20230103"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMTY0OTI2NzQ0ODA3Nw_7df7f4a4-234f-420e-869e-78adc69cfcd5">P6M</tls:ConsultingServicesContractOptionToExtendPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="iba1efe63ef214a3bbcac463b1809c4b3_D20230103-20230103"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMTA5OTUxMTYzMzU2NA_d74cce7f-f583-4988-bbc8-50aa3578b7c6"
      unitRef="shares">16859</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:RelatedPartyTransactionAmountsOfTransaction
      contextRef="i73595fa8d68d445b9344ce24052894eb_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfMTA5OTUxMTYzMzYyMA_85e4c6f9-48ea-4c6b-9e03-29b83bcabb5e"
      unitRef="usd">25000</us-gaap:RelatedPartyTransactionAmountsOfTransaction>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i76f50a14e846420aa025ead67a95190f_D20220201-20220201"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl82NC9mcmFnOmYzMzFkMTRhOTY2ZDRmMjI4Y2U1ZWVlZGVjNTJmZDRjL3RleHRyZWdpb246ZjMzMWQxNGE5NjZkNGYyMjhjZTVlZWVkZWM1MmZkNGNfNTQ5NzU1ODE4MzEx_e7fac5d9-ddca-4238-9f3b-25a6be4ab6d8"
      unitRef="shares">26091</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RleHRyZWdpb246ZTBjMzc3MzgyNzViNGM1MWFlOTViYWM3YTBlOWZlYzVfMzYxNQ_831a94f3-5d00-4186-95e7-eda9309aba62">SEGMENT INFORMATION&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We operate our business in two reportable and operating segments: Security Solutions and Secure Networks. These segments enable the alignment of our strategies and objectives and provide a framework for the timely and rational allocation of resources within the business lines.&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:112%"&gt;Our Security Solutions segment is primarily focused on cybersecurity, cloud and identity solutions, and secure messaging through Xacta&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;, Telos Ghost&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;, Telos Advanced Cyber Analytics ("Telos ACA"), Telos AMHS and Telos ID offerings. We recognize revenue on contracts from providing various system platforms in the cloud, on-premises, and in hybrid cloud environments, as well as software sales or software-as-a-service. Revenue associated with the segment's custom solutions is recognized as work progresses or upon delivery of services and products. Fluctuation in revenue from period to period is the result of the volume of software sales, and the progress or completion of cloud or cybersecurity solutions during the period. The majority of the operating costs relate to labor, material, and overhead costs. Software sales have immaterial operation costs associated with them, thus yielding higher margins. Gross profit and margin are a function of operational efficiency on security solutions and changes in the volume of software sales.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our Secure Networks segment provides secure networking architectures and solutions to our customers through secure mobility solutions, and network management and defense services. Revenue is recognized over time as the work progresses on contracts related to managing network services and information delivery. Contract costs include labor, material, and overhead costs. Variances in costs recognized from period to period primarily reflect increases and decreases in activity levels on individual contracts.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 17: Results of Operations by Business Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2023&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Revenues&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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Security Solutions&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,773&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;26,919&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Secure Networks&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:9pt;font-weight:400;line-height:100%"&gt;15,449&#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:9pt;font-weight:400;line-height:100%"&gt;23,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;35,222&#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:9pt;font-weight:400;line-height:100%"&gt;50,160&#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:#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:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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 #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Security Solutions&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:9pt;font-weight:400;line-height:100%"&gt;10,274&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;15,051&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Secure Networks&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:9pt;font-weight:400;line-height:100%"&gt;3,208&#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:9pt;font-weight:400;line-height:100%"&gt;3,820&#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 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total gross profit&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;13,482&#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:9pt;font-weight:400;line-height:100%"&gt;18,871&#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:#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:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&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:9pt;font-weight:400;line-height:100%"&gt;26,452&#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:9pt;font-weight:400;line-height:100%"&gt;35,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;/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:9pt;font-weight:400;line-height:100%"&gt;Operating loss&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;(12,970)&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:9pt;font-weight:400;line-height:100%"&gt;(16,367)&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:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income&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:9pt;font-weight:400;line-height:100%"&gt;2,496&#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:9pt;font-weight:400;line-height:100%"&gt;12&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(249)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(190)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Loss before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(10,723)&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:9pt;font-weight:400;line-height:100%"&gt;(16,545)&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 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Provision for income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(23)&lt;/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:9pt;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;/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:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(10,746)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&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:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We measure each segment's profitability based on gross profit. We account for inter-segment sales and transfers as if the sales or transfers were to third parties, that is, at current market prices. Interest income, interest expense, other income and expense items, and income taxes, as reported in the consolidated financial statements, are not part of the segment profitability measure and are primarily recorded at the corporate level.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Management does not utilize total assets by segment to evaluate segment performance or allocate resources. As a result, assets are not tracked by segment, and therefore, total assets by segment are not disclosed.&lt;/span&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RleHRyZWdpb246ZTBjMzc3MzgyNzViNGM1MWFlOTViYWM3YTBlOWZlYzVfNTQ5NzU1ODI0NDQz_5b3554cf-f19e-475c-a9af-1ef24887f988"
      unitRef="segment">2</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RleHRyZWdpb246ZTBjMzc3MzgyNzViNGM1MWFlOTViYWM3YTBlOWZlYzVfNTQ5NzU1ODI0NDQz_7ac80099-1976-4215-b19e-69af03fc6c45"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RleHRyZWdpb246ZTBjMzc3MzgyNzViNGM1MWFlOTViYWM3YTBlOWZlYzVfMzYxNg_2925a388-600f-4998-9131-01277ca6d588">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 17: Results of Operations by Business Segment&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2023&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Revenues&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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Security Solutions&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;19,773&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;26,919&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Secure Networks&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:9pt;font-weight:400;line-height:100%"&gt;15,449&#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:9pt;font-weight:400;line-height:100%"&gt;23,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;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total revenue&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;35,222&#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:9pt;font-weight:400;line-height:100%"&gt;50,160&#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:#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:9pt;font-weight:400;line-height:100%"&gt;Gross profit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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 #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Security Solutions&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:9pt;font-weight:400;line-height:100%"&gt;10,274&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;15,051&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Secure Networks&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:9pt;font-weight:400;line-height:100%"&gt;3,208&#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:9pt;font-weight:400;line-height:100%"&gt;3,820&#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 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total gross profit&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;13,482&#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:9pt;font-weight:400;line-height:100%"&gt;18,871&#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:#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:9pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&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:9pt;font-weight:400;line-height:100%"&gt;26,452&#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:9pt;font-weight:400;line-height:100%"&gt;35,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;/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:9pt;font-weight:400;line-height:100%"&gt;Operating loss&lt;/span&gt;&lt;/td&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:9pt;font-weight:400;line-height:100%"&gt;(12,970)&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:9pt;font-weight:400;line-height:100%"&gt;(16,367)&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:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other income&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:9pt;font-weight:400;line-height:100%"&gt;2,496&#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:9pt;font-weight:400;line-height:100%"&gt;12&#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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest expense&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:9pt;font-weight:400;line-height:100%"&gt;(249)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(190)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Loss before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(10,723)&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:9pt;font-weight:400;line-height:100%"&gt;(16,545)&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 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Provision for income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(23)&lt;/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:9pt;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;/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:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(10,746)&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&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;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iedf59a613a174fc7b3e2e54a7ca982da_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfNC0xLTEtMS0xNDI4NDg_d63c1d69-f642-43a6-84b0-88246041be5f"
      unitRef="usd">19773000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i48cf27281b6849b9acf4cedc0305cf2c_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfNC0zLTEtMS0xNDI4NDg_53e58be1-6375-4e41-a205-76e97fe04a93"
      unitRef="usd">26919000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i8676f26a17084ea0a42e2f6578e08052_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfNS0xLTEtMS0xNDI4NDg_5e504b2d-9cfb-4403-affa-cf91c9225bdf"
      unitRef="usd">15449000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i6afd422fe65d450e980f9fed6e529b34_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfNS0zLTEtMS0xNDI4NDg_7d37acc2-f937-4457-b5e2-a40c7ca2972f"
      unitRef="usd">23241000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfNi0xLTEtMS0xNDI4NDg_f2f9384d-6e1b-4446-88f4-1fd855cb9099"
      unitRef="usd">35222000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfNi0zLTEtMS0xNDI4NDg_135c2045-82ca-44f7-8ce5-764a0657b285"
      unitRef="usd">50160000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit
      contextRef="iedf59a613a174fc7b3e2e54a7ca982da_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfOS0xLTEtMS0xNDI4NDg_222e85be-f2dc-429b-a3e6-93fa72eb39a9"
      unitRef="usd">10274000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i48cf27281b6849b9acf4cedc0305cf2c_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfOS0zLTEtMS0xNDI4NDg_62541f43-bf29-406f-b8a3-f90ac1f6268f"
      unitRef="usd">15051000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i8676f26a17084ea0a42e2f6578e08052_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTAtMS0xLTEtMTQyODQ4_17ab5e80-fbfa-4d93-b034-ecf3152038dd"
      unitRef="usd">3208000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i6afd422fe65d450e980f9fed6e529b34_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTAtMy0xLTEtMTQyODQ4_036f1198-005c-4d36-a651-86ba6f52754c"
      unitRef="usd">3820000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTEtMS0xLTEtMTQyODQ4_ef44f80d-de4a-463a-b2ec-02ccf6fd7f68"
      unitRef="usd">13482000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTEtMy0xLTEtMTQyODQ4_6dd85810-c09e-4297-9ea1-e4a8915df7ea"
      unitRef="usd">18871000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTMtMS0xLTEtMTUxNTE1_673ca817-ae47-4fea-a938-716f75772b5d"
      unitRef="usd">26452000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTMtMy0xLTEtMTUxNTE1_231aaac4-6659-4eea-bc85-714c202b265a"
      unitRef="usd">35238000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTQtMS0xLTEtMTU4MTU2_79f282db-c232-4c77-ab2b-b38823534792"
      unitRef="usd">-12970000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTQtMy0xLTEtMTU4MTU2_c474ecde-5500-4866-b3cd-b7f7bc6ffd45"
      unitRef="usd">-16367000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTUtMS0xLTEtMTUxNTIz_d3c7d756-fba8-4075-968c-ae0c74d66add"
      unitRef="usd">2496000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTUtMy0xLTEtMTUxNTIz_e361175a-276b-4883-87b7-3a163b662d0a"
      unitRef="usd">12000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:InterestExpense
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTYtMS0xLTEtMTUxNTIz_dee36234-1608-4479-b75f-1250904393e2"
      unitRef="usd">249000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTYtMy0xLTEtMTUxNTIz_20572fb4-6950-4bf6-afb7-fcf72ce136f6"
      unitRef="usd">190000</us-gaap:InterestExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTctMS0xLTEtMTU4MTU2_0bf5e6dc-0798-43e6-a973-795b232ae5e3"
      unitRef="usd">-10723000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTctMy0xLTEtMTU4MTU2_f6177b3d-c5c6-4649-88d9-4c72d7e27a25"
      unitRef="usd">-16545000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTgtMS0xLTEtMTU3NzI4_8a19bbba-a416-4ef0-b507-2b9ec123fc44"
      unitRef="usd">23000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTgtMy0xLTEtMTU3NzI4_8907d39d-d640-4711-abfb-7467b88224e9"
      unitRef="usd">71000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTktMS0xLTEtMTU4MTU2_b3e8505b-999e-4e1c-853d-463dfab1582e"
      unitRef="usd">-10746000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl83OS9mcmFnOmUwYzM3NzM4Mjc1YjRjNTFhZTk1YmFjN2EwZTlmZWM1L3RhYmxlOmFhMjQzOTcxYjNkMzQxNTFhMGNiYWQ1Yzg5MmFhYWRmL3RhYmxlcmFuZ2U6YWEyNDM5NzFiM2QzNDE1MWEwY2JhZDVjODkyYWFhZGZfMTktMy0xLTEtMTU4MTU2_1798f3d7-c4c5-49e9-9f7c-6515961e2672"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl84Mi9mcmFnOmQwNzAzMzJiNTEzYTQ5MjRiOTQwN2UwNzQwZWJhNjBhL3RleHRyZWdpb246ZDA3MDMzMmI1MTNhNDkyNGI5NDA3ZTA3NDBlYmE2MGFfMjUzNg_83d3f71d-a93b-41e6-bcc9-9e4576e56890">COMMITMENTS AND CONTINGENCIES&lt;div style="margin-top:10pt"&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;Legal Proceedings&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 7, 2022, Telos and certain of its current and former officers were named as defendants in a lawsuit filed in the United States District Court for the Eastern District of Virginia ("Court"). In the complaint, the Plaintiffs, who purport to represent a class of purchasers of Telos common stock between November 19, 2020, and March 16, 2022, allege that the defendants violated securities laws by failing to disclose delays relating to the launch of certain contracts between Telos and the Transportation Security Administration ("TSA") and the Centers for Medicare and Medicaid Services and to take into account those delays when providing a financial forecast for the Company's 2021 performance. On June 15, 2022, the Plaintiffs filed a consolidated complaint which added claims (i) concerning Telos' disclosure of revenue projections for these contracts, (ii) against the directors of Telos at the time of its initial public offering, and (iii) pursuant to Sections 11 and 15 of the Securities Act of 1933. On February 1, 2023, the Court dismissed the lawsuit in its entirety for failure to state a claim. The Court's order of dismissal provided the Plaintiffs twenty-one days within which to file a motion for leave to file an amended complaint, should they have a good faith basis to do so. On March 1, 2023, the Plaintiffs filed a motion for leave to file an amended complaint, and on March 13, 2023, the Court granted the parties' consent motion permitting the filing of a consolidated amended class action complaint and establishing a briefing schedule for Telos' forthcoming motion to dismiss that amended complaint. On April 14, 2023, Telos moved to dismiss the consolidated amended class action complaint.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 does not believe that there are claims or proceedings that would have a material adverse effect on the business, or the unaudited consolidated financial statements of the Company as of March 31, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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;Other - Government Contracts&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 U.S. government contractor, we are subject to various audits and investigations by the U.S. government to determine whether our operations are being conducted in accordance with applicable regulatory requirements. U.S. government investigations of our operations, whether relating to government contracts or conducted for other reasons, could result in administrative, civil, or criminal liabilities, including repayments, fines or penalties being imposed upon us, suspension, proposed debarment, debarment from eligibility for future U.S. government contracting, or suspension of export privileges. Suspension or debarment could have a material adverse effect on us because of our dependence on contracts with the U.S. government. U.S. government investigations often take years to complete and many result in no adverse action against us. We also provide products and services to customers outside of the United States, which are subject to U.S. and foreign laws and regulations and foreign procurement policies and practices. Our compliance with local regulations or applicable U.S. government regulations also may be audited or investigated.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:CashFlowSupplementalDisclosuresTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGV4dHJlZ2lvbjozOThiODQxYWQyYjM0MTQ0OGNiNDNhMWU3NTYzMTU3Yl8yNzQ4Nzc5MDY5OTAw_a0d4dc79-604d-4c23-9ca8-14fc6edfe0c2">SUPPLEMENTAL CASH FLOW INFORMATION&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 19.1: Details of Cash, Cash Equivalents, and Restricted Cash&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,462&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;119,305&#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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restricted cash &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash, cash equivalents, and restricted cash&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,595&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;119,438&#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 style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; Restricted cash consists of a commercial money market account held as a deposit on the Ashburn lease and is recorded under "Other assets" on the unaudited consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 19.2: Supplemental Cash Flow Information&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2023&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cash paid during the period for:&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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;219&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease ROU assets obtained in exchange for 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;117&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Capital expenditure activity in accounts payable and other accrued 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:9pt;font-weight:400;line-height:100%"&gt;273&#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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Withholding tax on net share settlement under other current 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:9pt;font-weight:400;line-height:100%"&gt;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;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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Issuance of common stock for 401K match&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:9pt;font-weight:400;line-height:100%"&gt;1,942&#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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets transferred to extinguish the other financing obligations&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:9pt;font-weight:400;line-height:100%"&gt;7,089&#160;&lt;/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:9pt;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;/table&gt;&lt;/div&gt;</us-gaap:CashFlowSupplementalDisclosuresTextBlock>
    <us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGV4dHJlZ2lvbjozOThiODQxYWQyYjM0MTQ0OGNiNDNhMWU3NTYzMTU3Yl8yNzQ4Nzc5MDY5OTAx_0f902e28-58fe-4324-9c9d-cd0b776c07ff">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 19.1: Details of Cash, Cash Equivalents, and Restricted Cash&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,462&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;119,305&#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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restricted cash &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash, cash equivalents, and restricted cash&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,595&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;119,438&#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 style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; Restricted cash consists of a commercial money market account held as a deposit on the Ashburn lease and is recorded under "Other assets" on the unaudited consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashAndCashEquivalentsTableTextBlock>
    <us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGV4dHJlZ2lvbjozOThiODQxYWQyYjM0MTQ0OGNiNDNhMWU3NTYzMTU3Yl8yNzQ4Nzc5MDY5OTAx_1b2ef498-acdf-4d3d-9005-4db750469a62">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" 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:9pt;font-weight:700;line-height:100%"&gt;Table 19.1: Details of Cash, Cash Equivalents, and Restricted Cash&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&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:400;line-height:100%"&gt;March 31, 2023&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:400;line-height:100%"&gt;December 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,462&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;119,305&#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;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Restricted cash &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&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:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;133&#160;&lt;/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 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cash, cash equivalents, and restricted cash&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;112,595&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;119,438&#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 style="margin-bottom:9pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;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; Restricted cash consists of a commercial money market account held as a deposit on the Ashburn lease and is recorded under "Other assets" on the unaudited consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestrictedCashAndCashEquivalentsTextBlock>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6NDEzNWU1YzhmOGJiNGVhYWFhOGUyYWY1YTBmYzAxMzcvdGFibGVyYW5nZTo0MTM1ZTVjOGY4YmI0ZWFhYWE4ZTJhZjVhMGZjMDEzN180LTEtMS0xLTE1MTU3Mg_4c107306-4234-412f-8546-549736479e54"
      unitRef="usd">112462000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6NDEzNWU1YzhmOGJiNGVhYWFhOGUyYWY1YTBmYzAxMzcvdGFibGVyYW5nZTo0MTM1ZTVjOGY4YmI0ZWFhYWE4ZTJhZjVhMGZjMDEzN180LTMtMS0xLTE1MTU3Mg_fb56dec9-63aa-47c7-bf9e-b8cea9b7fb1e"
      unitRef="usd">119305000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6NDEzNWU1YzhmOGJiNGVhYWFhOGUyYWY1YTBmYzAxMzcvdGFibGVyYW5nZTo0MTM1ZTVjOGY4YmI0ZWFhYWE4ZTJhZjVhMGZjMDEzN181LTEtMS0xLTE1NDAzMg_471d1ff4-a32d-4dc4-aedb-b431e59a4e79"
      unitRef="usd">133000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:RestrictedCashNoncurrent
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6NDEzNWU1YzhmOGJiNGVhYWFhOGUyYWY1YTBmYzAxMzcvdGFibGVyYW5nZTo0MTM1ZTVjOGY4YmI0ZWFhYWE4ZTJhZjVhMGZjMDEzN181LTMtMS0xLTE1MTU3Mg_38679dfd-a0e7-40a7-84f5-e68d89b6203c"
      unitRef="usd">133000</us-gaap:RestrictedCashNoncurrent>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="if6a47d7ffb46493fa8519d3af5398a03_I20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6NDEzNWU1YzhmOGJiNGVhYWFhOGUyYWY1YTBmYzAxMzcvdGFibGVyYW5nZTo0MTM1ZTVjOGY4YmI0ZWFhYWE4ZTJhZjVhMGZjMDEzN182LTEtMS0xLTE1MTU4MQ_e80ea59a-12a1-4075-b9b4-044caf37435c"
      unitRef="usd">112595000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i193ef6c50abe42ceb127b924c685ea9b_I20221231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6NDEzNWU1YzhmOGJiNGVhYWFhOGUyYWY1YTBmYzAxMzcvdGFibGVyYW5nZTo0MTM1ZTVjOGY4YmI0ZWFhYWE4ZTJhZjVhMGZjMDEzN182LTMtMS0xLTE1MTU4MQ_55089d1f-cd77-4b88-8dcf-731550a9bd97"
      unitRef="usd">119438000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGV4dHJlZ2lvbjozOThiODQxYWQyYjM0MTQ0OGNiNDNhMWU3NTYzMTU3Yl8yNzQ4Nzc5MDY5OTAz_4942d892-3969-41d0-a7cf-ef0764bd5940">&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:61.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.372%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.373%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 19.2: Supplemental Cash Flow Information&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="9" 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:400;line-height:100%"&gt;For the Three Months Ended&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="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2023&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:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;March 31, 2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&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:8pt;font-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Cash paid during the period for:&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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;219&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;179&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Operating lease ROU assets obtained in exchange for 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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;117&#160;&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;147&#160;&lt;/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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Capital expenditure activity in accounts payable and other accrued 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:9pt;font-weight:400;line-height:100%"&gt;273&#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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Withholding tax on net share settlement under other current 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:9pt;font-weight:400;line-height:100%"&gt;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;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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Issuance of common stock for 401K match&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:9pt;font-weight:400;line-height:100%"&gt;1,942&#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:9pt;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 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Intangible assets transferred to extinguish the other financing obligations&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:9pt;font-weight:400;line-height:100%"&gt;7,089&#160;&lt;/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:9pt;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;/table&gt;</us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock>
    <us-gaap:InterestPaidNet
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF82LTEtMS0xLTE1MTYxNQ_75eed378-fa5d-4318-bc40-d6fc926c1583"
      unitRef="usd">219000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF82LTMtMS0xLTE1MTYxNQ_876a3ba7-b9a4-4396-b38a-2d8cc84851b1"
      unitRef="usd">179000</us-gaap:InterestPaidNet>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF85LTEtMS0xLTE1MTYxNQ_e11029cd-12ef-499b-be9f-a26845f6f320"
      unitRef="usd">117000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF85LTMtMS0xLTE1MTYxNQ_bd6784e6-bf7c-4ca0-b162-ee5342221efd"
      unitRef="usd">147000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMC0xLTEtMS0xNTE2MTU_5860359c-a04b-41ef-8c43-b17313b3d3fd"
      unitRef="usd">273000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMC0zLTEtMS0xNTE2MTU_a2acc5c2-115f-4c41-9c02-67eae3995177"
      unitRef="usd">0</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <tls:WithholdingTaxOnNetShareSettlementUnderOtherCurrentLiabilities
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMC0xLTEtMS0xNjAwNTg_8c616ab7-620e-432a-91e5-bebea045dc06"
      unitRef="usd">65000</tls:WithholdingTaxOnNetShareSettlementUnderOtherCurrentLiabilities>
    <tls:WithholdingTaxOnNetShareSettlementUnderOtherCurrentLiabilities
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMC0zLTEtMS0xNjAwNTg_f790a008-e1a4-4f9d-a0b9-1ffef016a559"
      unitRef="usd">0</tls:WithholdingTaxOnNetShareSettlementUnderOtherCurrentLiabilities>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMS0xLTEtMS0xNjAyMzE_bc31630e-3532-45fd-9713-c8438eff4ccb"
      unitRef="usd">1942000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMS0zLTEtMS0xNjAyMzE_0ac0bf9c-349f-4dd0-a293-9c0652a0d5c9"
      unitRef="usd">0</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <tls:IntangibleAssetsTransferredToExtinguishOtherFinancingObligations
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMi0xLTEtMS0xNjAyMzE_3fc33f7c-3ac2-4286-86c3-ebd011811725"
      unitRef="usd">7089000</tls:IntangibleAssetsTransferredToExtinguishOtherFinancingObligations>
    <tls:IntangibleAssetsTransferredToExtinguishOtherFinancingObligations
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTMwL2ZyYWc6Mzk4Yjg0MWFkMmIzNDE0NDhjYjQzYTFlNzU2MzE1N2IvdGFibGU6ZmUwNWM2ZGUwOThlNGFlOGFhN2ExMmQ1MWUwNDNhYzQvdGFibGVyYW5nZTpmZTA1YzZkZTA5OGU0YWU4YWE3YTEyZDUxZTA0M2FjNF8xMi0zLTEtMS0xNjAyMzE_f9957a19-a895-40e3-afdb-4a09915013ab"
      unitRef="usd">0</tls:IntangibleAssetsTransferredToExtinguishOtherFinancingObligations>
    <us-gaap:ErrorCorrectionTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGV4dHJlZ2lvbjoxN2Q3MWI3ODdlMDY0NmE3YmZmZjUwZGY0NzA3ZDBhYV8yNzQ4Nzc5MDcwMTg4_9a01cefa-8a19-4e8b-973c-3b096cc7d91d">REVISION OF PRIOR YEAR INTERIM FINANCIAL STATEMENTS&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 course of preparing the Company's consolidated financial statements for the year ended December 31, 2022, we identified that stock-based compensation expense related to the PSU awards with market conditions was erroneously reversed when those PSUs were forfeited during the quarter ended March 31, 2022. &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;Due to the error, general and administrative expense was understated by $1.6 million in the first quarter of 2022. Although the Company has determined that &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 error did not have a material impact on its previously issued interim consolidated financial statements, it revised the previously reported interim financial information in conjunction with the issuance of its quarterly filings on Form 10-Q for the quarter ended March 31, 2023. The errors had no net impact on cash flows from operating, investing or financing activities in the consolidated statement of cash flows. &lt;/span&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 following tables set forth the effects of the revisions of previously issued unaudited quarterly consolidated financial statements to correct for prior period error.&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; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 20.1: Impact of the Correction to the Unaudited Consolidated Statement of Operations&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" 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:400;line-height:100%"&gt;For the Three Months Ended March 31, 2022&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="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:400;line-height:100%"&gt;As Previously Reported&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:400;line-height:100%"&gt;Adjustment&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:400;line-height:100%"&gt;As Revised&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands, except per share data)&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:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;22,923&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,633&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,556&#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:9pt;font-weight:400;line-height:100%"&gt;Total selling, general and administrative expenses&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:9pt;font-weight:400;line-height:100%"&gt;33,605&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,633&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;35,238&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Operating loss&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:9pt;font-weight:400;line-height:100%"&gt;(14,734)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,367)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Loss before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(14,912)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,545)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;font-weight:400;line-height:100%"&gt;(14,983)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&lt;/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: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;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;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net loss per share, basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.22)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.03)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.25)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Net loss per share, diluted&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.22)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.03)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.25)&lt;/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-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 20.2: Impact of the Correction to the Unaudited Consolidated Statement of Comprehensive Loss&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" 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:400;line-height:100%"&gt;For the Three Months Ended March 31, 2022&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="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:400;line-height:100%"&gt;As Previously Reported&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:400;line-height:100%"&gt;Adjustment&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:400;line-height:100%"&gt;As Revised&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(14,983)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Comprehensive loss&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:9pt;font-weight:400;line-height:100%"&gt;(14,954)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,587)&lt;/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-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 20.3: Impact of the Correction to the Unaudited Consolidated Statement of Changes in Stockholders' Equity&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" 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:400;line-height:100%"&gt;For the Three Months Ended March 31, 2022&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="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:400;line-height:100%"&gt;As Previously Reported&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:400;line-height:100%"&gt;Adjustment&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:400;line-height:100%"&gt;As Revised&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,647&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,633&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;14,280&#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:9pt;font-weight:400;line-height:100%"&gt;Additional paid-in capital, end&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:9pt;font-weight:400;line-height:100%"&gt;376,913&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,633&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;378,546&#160;&lt;/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: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="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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(14,983)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Accumulated deficit, end&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:9pt;font-weight:400;line-height:100%"&gt;(201,960)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(203,593)&lt;/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;</us-gaap:ErrorCorrectionTextBlock>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGV4dHJlZ2lvbjoxN2Q3MWI3ODdlMDY0NmE3YmZmZjUwZGY0NzA3ZDBhYV81NDk3NTU4MTcxNzY_37af808c-a454-4bec-9984-c347e5c963fe"
      unitRef="usd">1600000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock
      contextRef="iaf494e2d23c54245ac802d57d6d77da8_D20230101-20230331"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGV4dHJlZ2lvbjoxN2Q3MWI3ODdlMDY0NmE3YmZmZjUwZGY0NzA3ZDBhYV8yNzQ4Nzc5MDcwMTg5_c56f3ec2-5e17-4e23-8b54-3c1e85dc8838">&lt;div style="margin-bottom:9pt;margin-top:6pt"&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 following tables set forth the effects of the revisions of previously issued unaudited quarterly consolidated financial statements to correct for prior period error.&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; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 20.1: Impact of the Correction to the Unaudited Consolidated Statement of Operations&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" 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:400;line-height:100%"&gt;For the Three Months Ended March 31, 2022&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="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:400;line-height:100%"&gt;As Previously Reported&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:400;line-height:100%"&gt;Adjustment&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:400;line-height:100%"&gt;As Revised&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands, except per share data)&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:9pt;font-weight:400;line-height:100%"&gt;General and administrative&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;22,923&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,633&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;24,556&#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:9pt;font-weight:400;line-height:100%"&gt;Total selling, general and administrative expenses&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:9pt;font-weight:400;line-height:100%"&gt;33,605&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,633&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;35,238&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Operating loss&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:9pt;font-weight:400;line-height:100%"&gt;(14,734)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,367)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Loss before income taxes&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:9pt;font-weight:400;line-height:100%"&gt;(14,912)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,545)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;font-weight:400;line-height:100%"&gt;(14,983)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&lt;/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: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;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;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net loss per share, basic&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.22)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.03)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.25)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Net loss per share, diluted&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.22)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.03)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(0.25)&lt;/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-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 20.2: Impact of the Correction to the Unaudited Consolidated Statement of Comprehensive Loss&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" 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:400;line-height:100%"&gt;For the Three Months Ended March 31, 2022&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="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:400;line-height:100%"&gt;As Previously Reported&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:400;line-height:100%"&gt;Adjustment&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:400;line-height:100%"&gt;As Revised&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(14,983)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Comprehensive loss&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:9pt;font-weight:400;line-height:100%"&gt;(14,954)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(16,587)&lt;/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-bottom:9pt;margin-top:6pt"&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.038%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.816%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.355%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.820%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;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;Table 20.3: Impact of the Correction to the Unaudited Consolidated Statement of Changes in Stockholders' Equity&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="15" 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:400;line-height:100%"&gt;For the Three Months Ended March 31, 2022&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="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:400;line-height:100%"&gt;As Previously Reported&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:400;line-height:100%"&gt;Adjustment&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:400;line-height:100%"&gt;As Revised&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&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:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" 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-style:italic;font-weight:400;line-height:100%"&gt;(in thousands)&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:9pt;font-weight:400;line-height:100%"&gt;Stock-based compensation&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;12,647&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;1,633&#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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;14,280&#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:9pt;font-weight:400;line-height:100%"&gt;Additional paid-in capital, end&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:9pt;font-weight:400;line-height:100%"&gt;376,913&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;1,633&#160;&lt;/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:9pt;font-weight:400;line-height:100%"&gt;378,546&#160;&lt;/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: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="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:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Net loss&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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(14,983)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;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:9pt;font-weight:400;line-height:100%"&gt;(16,616)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;Accumulated deficit, end&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:9pt;font-weight:400;line-height:100%"&gt;(201,960)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(1,633)&lt;/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:9pt;font-weight:400;line-height:100%"&gt;(203,593)&lt;/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;</us-gaap:ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentsTextBlock>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM181LTEtMS0xLTE1MTczNA_f838b630-7268-47df-ac7f-443698abcb91"
      unitRef="usd">22923000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM181LTMtMS0xLTE1MTczNA_0152b377-a744-40d2-b1f7-23a76fa59466"
      unitRef="usd">1633000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM181LTUtMS0xLTE1MTc0NA_10679600-222c-486c-bd30-3dfcb2df1a1d"
      unitRef="usd">24556000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM182LTEtMS0xLTE1MTczNA_d6b36d9a-98ca-4904-8773-e01996b4d7c1"
      unitRef="usd">33605000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM182LTMtMS0xLTE1MTczNA_26260ab2-e234-43c3-a53b-6b63df30ab05"
      unitRef="usd">1633000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM182LTUtMS0xLTE1MTc0NA_55edf31a-3f53-40cb-a03a-964b8db62fb4"
      unitRef="usd">35238000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM183LTEtMS0xLTE1MTczNA_c2d5d6ee-7fd0-4c81-bef1-0b7a4743953e"
      unitRef="usd">-14734000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM183LTMtMS0xLTE1MTczNA_270730fe-f514-4d11-8759-c58be19a5e1c"
      unitRef="usd">-1633000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM183LTUtMS0xLTE1MTc0NA_463bbd01-4bbe-457c-a8fb-4dd655826c9c"
      unitRef="usd">-16367000</us-gaap:OperatingIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM184LTEtMS0xLTE1MTczNA_c91fc954-c24b-4976-b58e-07025e62fccf"
      unitRef="usd">-14912000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM184LTMtMS0xLTE1MTczNA_b52024a3-ee2d-4df5-9192-a151ba2bdcb7"
      unitRef="usd">-1633000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM184LTUtMS0xLTE1MTc0NA_e457ea86-f554-4195-ba22-0f4f087cc478"
      unitRef="usd">-16545000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:NetIncomeLoss
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM185LTEtMS0xLTE1MTczNA_4f0885e6-e04b-4a4b-a016-455fe39e7ab9"
      unitRef="usd">-14983000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM185LTMtMS0xLTE1MTczNA_1201ebc6-5ef4-4553-bfe1-d2eb6610454d"
      unitRef="usd">-1633000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM185LTUtMS0xLTE1MTc0NA_dead4ccf-b8e0-4749-a1c1-fa073e9171d9"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM18xMS0xLTEtMS0xNTE3MzQ_102a4ee7-d692-4084-b9c9-dfa23bf03c49"
      unitRef="usdPerShare">-0.22</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM18xMS0zLTEtMS0xNTE3MzQ_91367239-8f16-403e-be05-647274768393"
      unitRef="usdPerShare">-0.03</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM18xMS01LTEtMS0xNTE3NDQ_0024e352-49da-496c-a1cc-241f480f1ca2"
      unitRef="usdPerShare">-0.25</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM18xMi0xLTEtMS0xNTE3MzQ_00911e45-0413-4d79-b8ef-f722deab024e"
      unitRef="usdPerShare">-0.22</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM18xMi0zLTEtMS0xNTE3MzQ_76fd897c-e7a2-4cc7-9115-85443f6bab99"
      unitRef="usdPerShare">-0.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6NjEyNDg4N2NiMGQwNGZlZGI4NTE4NWNlMzNlYWRhZDMvdGFibGVyYW5nZTo2MTI0ODg3Y2IwZDA0ZmVkYjg1MTg1Y2UzM2VhZGFkM18xMi01LTEtMS0xNTE3NDQ_70f05b64-d238-4021-bd4c-5d961b175365"
      unitRef="usdPerShare">-0.25</us-gaap:EarningsPerShareDiluted>
    <us-gaap:NetIncomeLoss
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjljMmQzOTMxZGYxNGY5NmE0NTJiYTNmZDkzY2QxMDUvdGFibGVyYW5nZToyOWMyZDM5MzFkZjE0Zjk2YTQ1MmJhM2ZkOTNjZDEwNV81LTEtMS0xLTE1MTc2Ng_4b07e82c-bb38-4384-818d-7e249dd1b27a"
      unitRef="usd">-14983000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjljMmQzOTMxZGYxNGY5NmE0NTJiYTNmZDkzY2QxMDUvdGFibGVyYW5nZToyOWMyZDM5MzFkZjE0Zjk2YTQ1MmJhM2ZkOTNjZDEwNV81LTMtMS0xLTE1MTc2Ng_84206882-e69b-4928-a627-12044fd8d6de"
      unitRef="usd">-1633000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjljMmQzOTMxZGYxNGY5NmE0NTJiYTNmZDkzY2QxMDUvdGFibGVyYW5nZToyOWMyZDM5MzFkZjE0Zjk2YTQ1MmJhM2ZkOTNjZDEwNV81LTUtMS0xLTE1MTc3MQ_0511980c-3bf2-4e34-8d7a-e498eb0fec55"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjljMmQzOTMxZGYxNGY5NmE0NTJiYTNmZDkzY2QxMDUvdGFibGVyYW5nZToyOWMyZDM5MzFkZjE0Zjk2YTQ1MmJhM2ZkOTNjZDEwNV82LTEtMS0xLTE1MTc2Ng_150f62de-4629-4419-bf48-8c53e4aaab2a"
      unitRef="usd">-14954000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjljMmQzOTMxZGYxNGY5NmE0NTJiYTNmZDkzY2QxMDUvdGFibGVyYW5nZToyOWMyZDM5MzFkZjE0Zjk2YTQ1MmJhM2ZkOTNjZDEwNV82LTMtMS0xLTE1MTc2Ng_c160dee9-34a6-492d-a4bb-351ae0a6a61e"
      unitRef="usd">-1633000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjljMmQzOTMxZGYxNGY5NmE0NTJiYTNmZDkzY2QxMDUvdGFibGVyYW5nZToyOWMyZDM5MzFkZjE0Zjk2YTQ1MmJhM2ZkOTNjZDEwNV82LTUtMS0xLTE1MTc3MQ_a052560e-de85-4229-a3fd-9c5a4b8c341d"
      unitRef="usd">-16587000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="icabbef1cdb284e37b5fe885b9f58dc43_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV81LTEtMS0xLTE1MTgyMg_50c7512a-afa4-43f4-9c8e-7b229fbccfca"
      unitRef="usd">12647000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i98ac06d662e545b0aae21f2563969e1f_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV81LTMtMS0xLTE1MTgyMg_f97b9284-188c-4e83-a761-f63286cfecdc"
      unitRef="usd">1633000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ia0ecc96f06b64dd898a0bb13afd29b85_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV81LTUtMS0xLTE1MTgzMA_2f3fc6d7-16a4-4072-85f2-801db45d6e20"
      unitRef="usd">14280000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockholdersEquity
      contextRef="i86eed2ed0e494e46bfd6ebb95d6112f7_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV82LTEtMS0xLTE1MTgyMg_b14888b4-2fd9-4cfa-9b32-1ee03f77b02d"
      unitRef="usd">376913000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i90d9c29285484666ab5d029778a54a43_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV82LTMtMS0xLTE1MTgyMg_40c363ca-dd9c-4f3d-b694-4c52867bfe7a"
      unitRef="usd">1633000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ie63ef0b1f8c648e987327e9ecba8597b_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV82LTUtMS0xLTE1MTgzMA_19be5734-3711-40c8-a992-05642a074592"
      unitRef="usd">378546000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="id6892ab766d2409c98b5e4d6cd7d4ee9_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV84LTEtMS0xLTE1MTgyMg_7c1a0cde-adf3-499a-ba37-867cbdff43bc"
      unitRef="usd">-14983000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ibd26a010bdf84dc4a8890c2115e4a27e_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV84LTMtMS0xLTE1MTgyMg_914ff565-1a21-4f6c-bc02-804a892ccb1c"
      unitRef="usd">-1633000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i84e11a0f503d443f9e13c185f9bc7b46_D20220101-20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV84LTUtMS0xLTE1MTgzMA_013a2ceb-8fa0-484f-8920-83f8c950bd97"
      unitRef="usd">-16616000</us-gaap:NetIncomeLoss>
    <us-gaap:StockholdersEquity
      contextRef="i45bc626987384ffa9d96a89b8a6298c4_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV85LTEtMS0xLTE1MTgyMg_8131c0cb-e8bc-4a58-8489-19cea7b939f5"
      unitRef="usd">-201960000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i26dcbf1720e84263a3135f5ebf6d5a19_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV85LTMtMS0xLTE1MTgyMg_84d08724-eef9-4f88-8544-2f4d706cbeb9"
      unitRef="usd">-1633000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ice8321a8df8a48e59b906290ead40f35_I20220331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjcxMDFiNDk3ZDllZjQ0NGJiZjI2NGU0ZTNmMjE5YTVmL3NlYzo3MTAxYjQ5N2Q5ZWY0NDRiYmYyNjRlNGUzZjIxOWE1Zl8xMTI0L2ZyYWc6MTdkNzFiNzg3ZTA2NDZhN2JmZmY1MGRmNDcwN2QwYWEvdGFibGU6MjRmNjFhMmMwOTc3NGRjYmI3NmNjMTZiMDhhYmFlYjkvdGFibGVyYW5nZToyNGY2MWEyYzA5Nzc0ZGNiYjc2Y2MxNmIwOGFiYWViOV85LTUtMS0xLTE1MTgzMA_bb8398ce-1057-4b3a-9837-c6d499e2aa23"
      unitRef="usd">-203593000</us-gaap:StockholdersEquity>
</xbrl>
